gcc-3.2.1을 처음 쓰는데;; ㅜ.ㅜ
글쓴이: changkhan / 작성시간: 화, 2003/04/08 - 4:43오후
FreeBSD 4.6에서 프로그래밍을 하다가, 새 서버에 FreeBSD 5.0을 깔았습니다. 그리고 전에 만들던 소소들을 새 서버로 옮겨서 컴파일을 하는데, 컴파일러가 자꾸 이상한 부분에서 딴지를 거는겁니다;;
음;; 새로운 컴파일러가 뭔가 좀 이상하다 싶어서 헬로월드를 컴파일 해 봤는데요;;;
#include <stdio.h>
void main()
{
printf("hello world!\n");
}
g++ test.cpp
글쎄 이 프로그램조차 "test.cpp4 `main' must return `int'"라는 에러를 내네요;;;;
디버그 레벨이 높아서 그런것 같은데, 이런 소소한 것들에 딴지걸리지 않을 방법이 있었까요?;;
Forums:
피하는 방법은 없지요.
저런 메시지는 그냥 감수하셔야 합니다.
아니면 저 말대로 그냥 int main()으로 쓰시던지요.
========================================
* The truth will set you free.
음.. 저 메세지는 워닝이 아니고 에러이기 때문에 그냥 감수할 수가 없군
음.. 저 메세지는 워닝이 아니고 에러이기 때문에 그냥 감수할 수가 없군요^^; 그리고 이부분이 문제라 컴파일이 안된다는게 아니라.. 이런식으로 문제되는 부분이 셀 수 없이 많아서, 이전 소스들이 완전 무용지물이 되어버렸다는겁니다. 컴파일러에 맞춰서 소스를 다 고치면 일이 너무 많아서요^^;;
추가로 'sgi stl'과도 호환이 안되는 것 같은 느낌인데;; 암울하군
추가로 'sgi stl'과도 호환이 안되는 것 같은 느낌인데;; 암울하군요;; 어떻게 해야할지;;
C++ 컴파일이기 때문이 아닐까요?
한번 gcc로 컴파일해보시기 바랍니다. 그래도 에러로 떨어지나요?
========================================
* The truth will set you free.
C++에서 main 함수는 반드시[code:1]int main&#
C++에서 main 함수는 반드시
이 형태여야 합니다. main 함수는 void 형을 돌려주는 함수가 아닙니다.
stdio를 쓰는 제대로 된 C++ 코드는
랍니다.
STL 관련 문제는 namespace 문제인 듯 싶군요.
void main() vs. int main()
저역시 ... void main()에 익숙합니다만...
뭐, 표준이 아니라는 데 뭐라 할 말이 없더군요.
표준은 int main()입니다.
ㅡ.ㅡ;
그런데, 전에는 경고였는데, 에러로 바뀌었나 보군요.
===== ===== ===== ===== =====
knight2000 of SALM.
SALM stood for SALM Ain't a Life Model.
SALM is not the life model, but SALM is just the life.
댓글 달기