shared lib를 사용하려고 하는데여...
[aix /home/test/lib]ls -l
total 1208
lrwxrwxrwx 1 test test 33 Apr 19 17:53 libcocodb.so@ -> /home/test/lib/libcocodb.so.1*
lrwxrwxrwx 1 test test 35 Apr 19 17:53 libcocodb.so.1@ -> /home/test/lib/libcocodb.so.1.0*
-rwxr-xr-x 1 test test 616362 Apr 19 17:53 libcocodb.so.1.0*
[aix /home/test/lib]
와 같이 지정된 path에 lib 가 있고요...
그 상태에서 아래와 같이 make 를 돌렸을때 아래와 같은 에러가 생기네요.
gcc -g -Wall -o cocolim coco1.o coco2.o coco3.o -L/home/test/lib -lcocodb
ld: 0706-006 Cannot find or open library file: -l cocodb
ld:open(): No such file or directory
collect2: ld returned 255 exit status
make: *** [cocolim] Error 1
OS는 AIX 이고 컴파일러는 GCC 입니다.
SH은 CSH 이구요...
고수님들의 답변 기다립니다...꼬~~옥 답변 주심 감솨하겠습니다...ㅠ.ㅠ
make 가 라이브러리를 찾지 못하는 것은 -L 경로는 맞아도 실행 시 찾는 경로와 링크 이름이 다르기 때문일 수 있습니다. -lcocodb 로 링크하고, 실행 시에는 LD_LIBRARY_PATH 나 -Wl,-rpath 로 경로를 지정하세요. 에러 메시지 마지막 줄을 함께 보면 정확합니다.