繁体   English   中英

swig mysql:undefined symbol:mysql_init'

[英]swig mysql: undefined symbol: mysql_init'

我正在尝试为提供mysql连接的python创建一个swig包。 但是,当我尝试在python中导入包时,出现以下错误:

-> _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 ++ main中使用此类(IMysqlConnection.cc)时,我能够进行mysql连接。

任何帮助和指导,我将不胜感激。

您可以使用http://sourceforge.net/projects/mysql-python/

但是,这不能完全回答您的连接。

解决:创建共享库_IMysqlConnection.so时缺少mysql_config --cflags mysql_config --libs --libs

g ++-共享的CMysqlConnection_wrap.o CMysqlConnection.o -o _CMysqlConnection.so mysql_config --cflags mysql_config --libs

上面的命令将mysql库链接到共享库_IMysqlConnection.so,并且运行良好。

感谢Ugo的帮助:-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM