gcc 3.2 버젼에서 프로그래밍 할때 문제입니다.
......
void Graph:: InitFromFile(char* fileName)
{
ifstream fin(fileName);
char temp[10];
int nodeNum;
int linkNum;
while(fin.eof()==0)
{
fin>>temp;
nodeNum=atoi(temp);
fin>>temp;
linkNum=atoi(temp);
HeadNodes[nodeNum].Insert(linkNum);
}
fin.close();
}
.......
이런 식으로 프로그래밍을 했더니
다음과 같은 애러가 뜹니다..
/tmp/ccg20u0f.o: In function `Graph::InitFromFile(char *)':
/tmp/ccg20u0f.o(.text+0x20): undefined reference to `ifstream::ifstream(int, char const *, int, int)'
/tmp/ccg20u0f.o(.text+0x3c): undefined reference to `ios::eof(void) const'
/tmp/ccg20u0f.o(.text+0x67): undefined reference to `istream::operator>>(char *)'
/tmp/ccg20u0f.o(.text+0xa1): undefined reference to `istream::operator>>(char *)'
/tmp/ccg20u0f.o(.text+0xf7): undefined reference to `fstreambase::close(void)'
/tmp/ccg20u0f.o(.text+0x10b): undefined reference to `ifstream::~ifstream(void)'
/tmp/ccg20u0f.o(.text+0x121): undefined reference to `ifstream::~ifstream(void)'
collect2: ld returned 1 exit status
You have new mail in /var/spool/mail/eostm
어찌된 일일까요?
비주얼 C++ 이나 옛날 버전의 컴파일러에서는 이런 말들이 안나오는데..


#include <fstream.h>혹은#inc
#include <fstream.h>
혹은
#include <fstream>
이 없어서 그런 것 아닌 가요?
아니면 STL의 경우
using namespace std;
를 앞부분에 두세요.
---
http://coolengineer.com
혹시..
혹시 g++이 아니라 gcc로 컴파일하신 게 아닌가요..??
Consider the ravens: for they neither sow nor reap; which neither have storehouse nor barn; and God feedeth them: how much more are ye better than the fowls?
Luke 12:24
gcc 로 컴파일 하셨다면 -lstdc++ 이 옵션을 추가해주세요
gcc 로 컴파일 하셨다면
-lstdc++ 이 옵션을 추가해주세요.
g++ 이면 그 기본 라이브러리가 link 가 되는 것으로 알고 있습니다...
댓글 달기