mysql API 컴파일 중 ld 에러로 인한 문제
안녕하세요 ?
mysql 설치 이후, 기존 리눅스 에서 사용중인
프로그램을 맥 BSD 로 포팅하는데, 헐 다른 에러는 몇가지 있어서
잡기는 했는데, mysql 에서 ld 에러를 내는군요.
혹시, 경험이 있으신분들의 조언을 부탁드립니다.
사용환경 : MAC OS X 1.2.4 ( 1.2.5 현재,업글 ,증상동일)
MYSQL : mysql standard 4.0.12 버젼
( include 및 lib 모두 함께 있음 )
mysql 용 C API 을 사용했습니다.
그런데, 문제는 다른 mysql 함수들은 ld 에러를 발생하지 않는데
유독 , mysql_connect 만 에러가 발생합니다.
에러는
----------------------------------------------------------------------
ld: Undefined symbols:
_mysql_connect
----------------------------------------------------------------------
이렇게 나옵니다. 다른에러는 없고요.
만약 링크에러나 기타 에러라면 다른 함수들도 나와야
될텐데 걱정입니다.
컴파일시 여러가지 옵션을 주어 봤는데, 위에 에러가
나오는 최종 옵션을 다음과 같습니다.
---------------------------------------------------------------------------
gcc -o a a.c -I/usr/loca/mysql/include -L/usr/local/mysql/lib -lmysqlclient -lm -lz
---------------------------------------------------------------------------
위와 같이 했습니다.
(처음에서 lm 및 lz 은 포함하지 않았지만 에러가 나서 첨부한 것입니다. )
도움을 부탁드립니다.
Mac BSD는 써보질 않아서 정확한 library 명은 모르겠지만
Mac BSD는 써보질 않아서 정확한 library 명은 모르겠지만
libmysqlclient.a 혹은 libmysqlclient.so 가 있다고 가정하고,
nm -A libmysqlclient.a 에서
" T " 로 되어 있는 mysql_connect 가 있어야합니다.
없다면 존재하는 connect의 다른 버젼을 사용하는 것이 해결책이지 싶네요
---
http://coolengineer.com
댓글 달기