오픈소스 컴파일 중, 다음과 같은 에러 메시지를 발견했다.

error: ‘EOF’ was not declared in this scope

make[1]: Entering directory `/home/jonathan/workspace/13.CIDS/CIDSSip/SipLibrary/resiprocate-1.6/rutil’
g++         -march=i686 -D_REENTRANT  -g  -Wall  -I.. -I../build/../contrib/ares -DOS_MAJOR_VER=2 -DOS_MINOR_VER=6 -DOS_POINT_VER=38-13-generic-pae -DOS_PATCH_VER=0 -DRESIP_OSTYPE_LINUX -DRESIP_ARCH_I686 -DRESIP_LARCH_IA32 -DRESIP_TOOLCHAIN_GNU -DUSE_ARES -c -o obj.debug.Linux.i686/SysLogBuf.o SysLogBuf.cxx
SysLogBuf.cxx: In member function ‘virtual int resip::SysLogBuf::overflow(int)’:
SysLogBuf.cxx:39:13: error: ‘EOF’ was not declared in this scope
make[1]: *** [obj.debug.Linux.i686/SysLogBuf.o] Error 1
make[1]: Leaving directory `/home/jonathan/workspace/13.CIDS/CIDSSip/SipLibrary/resiprocate-1.6/rutil’
make: *** [rutil] Error 2

이에 대한 해결법은 아래의 링크에서 찾을 수 있었다.

http://code.google.com/p/o3d/issues/detail?id=87

문제 해결은 간단하다. 해당 소스 파일에 아래의 헤더파일을 추가하도록 명시해주면 된다.

#include <cstdio>

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.