我正试图将一个作为动态库(带有开发头)提供的库包装到python中,以便与现有应用程序一起使用。我已经创建了我的.I文件,该文件编译时不会出现问题,但是当我尝试链接ndipy_wrap.o和libndi.dylib文件时,会收到一些关于找不到符号的警告
运行
ld -bundle -flat_namespace -undefined suppress -o _ndipy.so ndipy_wrap.o libndi.4.dylib
意味着我从链接器中获得了一个干净的出口,尽管尝试将模块加载到python中会导致:
import ndipy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/d5/Projects/ndipy/ndipy.py", line 15, in <module>
import _ndipy
ImportError: dlopen(/Users/d5/Projects/ndipy/_ndipy.so, 2): Symbol not found: __Z14NDIlib_destroyv
Referenced from: /Users/d5/Projects/ndipy/_ndipy.so
Expected in: flat namespace
我现在有点不知所措,盯着它看了好几个小时,我觉得在我的搜索中,我看不见树木,也看不见树木
多谢各位, 戴夫
编辑添加:us of-undefined suppress是一个类似解决方案的建议,尽管我目前无法找到它!删除此选项将导致ld: symbol(s) not found for architecture x86_64
目前没有回答
相关问题 更多 >
编程相关推荐