mysq出现python ctypes错误

2024-10-03 09:09:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我用c创建了一个库,但在python中调用该库时,会显示以下错误:

Traceback (most recent call last):
  File "probrar_lib.py", line 6, in <module>
    lib = cdll.LoadLibrary('/home/msorjas/Documentos/pruebas_c/lib1.so')
  File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /home/msorjas/Documentos/pruebas_c/lib1.so: undefined symbol: mysql_query

c库,用以下代码编译:

gcc -c -fPIC lib1.c
gcc -shared lib1.o -o lib1.so

它应该编译什么?你知道吗

我使用linux。你知道吗

已解决:

gcc -c -fPIC lib1.c
gcc -shared lib1.o -o lib1.so $(mysql_config --libs) $(mysql_config --cflags)

Tags: inpyselfhomesoinitlibline
2条回答

你忘了告诉它用MySQL构建。你知道吗

gcc -shared -lmysqlclient lib1.o -o lib1.so
gcc -c -fPIC lib1.c
gcc -shared lib1.o -o lib1.so $(mysql_config  libs) $(mysql_config  cflags)

相关问题 更多 >