| 2004-01-26, 09:31 PM | #1 |
|
Senior Member
![]() ![]() Registered: Jan 2003
My Mac: MacBook, iPod touch
Posts: 291
오프라인
|
gcc 3.3 컴파일러 관련 질문
컴파일시 문제때문에 질문드려봅니다.
현재 팬서에 같이 딸려온 Development Kit 과 Xcode 등을 설치해서 사용하는 중입니다. 따라서 gcc 3.3 이 기본으로 깔리더군요. 문제는 맥에서 그 이전 버젼과 리눅스에 깔려 있던 gcc 3.2.x 버젼, 그리고 gcc 2.9.x 버젼등에서 전혀 문제 없이 컴파일되고 실행되던 프로그램하나가 컴파일시에 에러를 내는데 정확한 이유를 알수가 없군요. 문제되는 부분을 알고있지만 왜 컴파일 에러인지는 알수가 없네요. 대략 다음과 같습니다. // #include "strstream.h" // gcc 2.9.x 버젼인 경우 #include "sstream" // gcc 3.3 버젼의 경우 #define AAA "aaa" .. void run() { ostrstream command; command "<<" AAA; } ( "<<"가 입력이 안되서 인용부호를 사용했습니다.) 처음에는 strstream.h 가 3.3에서 sstream 으로 바뀌었다는 경고 메시지가 주르륵 떠서 수정을 해줬고, 뒤져보니 class ostrstream 도 ostringstream 으로 바뀌고(물론 typedef 를 통해서 ostrstream도 사용가능) 등등 문제를 해결해줬습니다. 문제는 컴파일을 해보면 "ostrstream undeclared" 라고 나옵니다.결론은 class ostrstream 을 인식못하는 것입니다만, 분명 sstream 을 뒤져보면 잘 정의되어 있고 다른 strstream 이나 (이름만 다르고 내용은 같더군요.) ostringstream, basic_ostringstream 등등 동일 class 들을 모두 사용해보았지만 동일한 에러를 냅니다. 문제는 리눅스에서 gcc 3.2.x 버젼에서는 실행까지 아무런 문제가 없었지요. 헤더파일을 인식하고 있으므로 파일 의존성 문제도 아닙니다. 무엇이 문제인지 답변 좀 부탁드리겠습니다.
__________________
longtake 님께서 2004-01-26 09:59 PM 에 수정하셨습니다.. |
|
| 2004-01-26, 10:42 PM | #2 |
|
Elite Member
![]() ![]() ![]() ![]() Registered: Sep 2001
My Mac: G4
Posts: 1,230
오프라인
|
framework을 추가하지 않아서가 아닐까요?
Project메뉴에서 libstdc++.a프레임웍을 추가해보심이.. |
|
| 2004-01-26, 11:33 PM | #3 |
|
Senior Member
![]() ![]() Registered: Jan 2003
My Mac: MacBook, iPod touch
Posts: 291
오프라인
|
현재는 Xcode를 사용해서 컴파일하는게 아니라 terminal 상에서 makefile 을 이용하고 있습니다. 수치계산용 프로그램이라 text 기반이죠. 그런데 그 프레임웍이라는게 링크시에 필요한것 아닌가요?
다른 플랫폼이나 버젼의 gcc를 사용시에 그러한 것을 설정해줄 필요가 전혀 없었는데 말이죠.
__________________
|
|
| 2004-01-27, 12:25 AM | #4 |
|
Veteran Member
![]() ![]() ![]() Registered: Feb 2002
My Mac: iMac G5 1.6GHz
Posts: 846
오프라인
|
#include <sstream>
using namespace std; .. 이하 동일 요즘의 C++ 표준안을 따르시려면 using namespace std; 가 반드시 필요합니다. 왜냐고 물으신다면, 책을 보시라고 말씀드리고 싶네요. 애플 포럼의 주제를 벗어나니까요..
__________________
|
|
| 2004-01-27, 01:22 AM | #5 |
|
Senior Member
![]() ![]() Registered: Jan 2003
My Mac: MacBook, iPod touch
Posts: 291
오프라인
|
아하 그렇군요. 오래전에 코딩해서 써온터라 그 이후로 새로 바뀐 부분을 신경쓰지 않았더니만 몰랐네요. 감사합니다.
__________________
|
|