esql을 이용하여 db 쪽 함수를 만들고 gcc로 c++에서 호출해서 사용하려고 합니다.
그런데 소스는 무사히 컴파일이 되었는데 링크하면 sybase 라이브러리를 찾지 못합니다.
Link시에 라이브러리 파일을 직접 넣어줘도 마찬가지네요.
레드헷 리눅스 7.3, gcc 2.96, ASE 12.5에서 컴파일은 아래와 같이 하였습니다.
> cpre esql.pc
> g++ -O2 -c esql.c -I$(SYBASE)/OCS-12_5/include
> g++ -O2 -o sybtest sybtest.cc thread.cc esql.o -lpthread -lnsl -lssl /opt/sybase/OCS-12_5/libct.a /opt/sybase/OCS-12_5/libcs.a /opt/sybase/OCS-12_5/libcomn.a
<Error Message>
./esql.o(.text_0x2d9c): undefined reference to '_sqlepilog'
. . .
cteutil.o(.text+0x3a): undefined reference to 'com_ep_sd'
/opt/sybase/OCS-12_5/lib/libct.a(cteutil.o): In function 'ct__sp_ss'
.
.
.
해결방법을 부탁드립니다.
|