2011-10-19 2 views
2

mysql 연결을 제공하는 python 용 swig 패키지를 만들려고합니다. 나는 다음과 같은 오류 얻을 파이썬 패키지 가져 오려고 할 때 :swig mysql : undefined symbol : mysql_init '

-> _mod = imp.load_module('_IMysqlConnection', fp, pathname, description) 
(Pdb) s 
ImportError: './_IMysqlConnection.so: undefined symbol: mysql_init' 

나는 다음과 같은 명령을 사용하여 패키지를 만드는 오전을

$swig -c++ -python -o IMysqlConnection_wrap.cc IMysqlConnection.i 
$ gcc -fPIC -c IMysqlConnection_wrap.cc -o IMysqlConnection_wrap.o -I /usr/include/python2.6/ `mysql_config --cflags` `mysql_config --libs` 
g$ gcc -fPIC -c IMysqlConnection.cc -o IMysqlConnection.o -I . /usr/include/python2.6/ `mysql_config --cflags` `mysql_config --libs` 
$ g++ -shared IMysqlConnection_wrap.o IMysqlConnection.o -o _IMysqlConnection.so 

(내가 실수를 만드는 중이라서 어디 아마입니다) C++에서이 클래스 (IMysqlConnection.cc)를 사용할 때 mysql 연결을 할 수있다.

모든 도움과 안내를 부탁드립니다.

답변

0

는 해결 : 공유 라이브러리를 생성하는 동안 나는 mysql_config --cflagsmysql_config --libs 누락 된 _IMysqlConnection.so

그램 ++ -shared CMysqlConnection_wrap.o CMysqlConnection.o -o _CMysqlConnection.so받는 명령 연결 MySQL의 라이브러리 위 mysql_config --cflagsmysql_config --libs

공유 라이브러리 _IMysqlConnection.so 및 그것은 잘 작동했습니다.

1

당신이 정확히하지만 연결에 응답하지 않습니다 http://sourceforge.net/projects/mysql-python/

사용할 수 있습니다.

+0

가 해결 :-) 당신의 도움에 대한

감사 우고 : 나는 실종됐다'되는 mysql_config --cflags''되는 mysql_config --libs' 공유 라이브러리가 g ++ -shared CMysqlConnection_wrap.o CMysqlConnection을 _IMysqlConnection.so 만드는 동안. o -o _CMysqlConnection.so'mysql_config --cflags' mysql_config --libs' 위의 명령은 mysql 라이브러리를 _IMysqlConnection.so 공유 라이브러리에 연결하여 정상적으로 작동합니다. 감사합니다. 도움을 주신 Ugo :-) – Saurabh

관련 문제