用于Python编译的动态库 - 没有目录

时间:2013-04-14 23:21:07

标签: python c gcc swig

希望这将是一个简单的。我正在阅读名为Beginning Python的书,并学习如何使用c或c ++进行扩展,然后使用swig使其可用于多种语言。我已经通过了一个回顾c代码的回文的例子。希望我不需要包含所有代码。在编译和链接方面:

gcc -dynamic -I/Library/Frameworks/Python.framework/Versions/Current/include/python2.7 -c palindrome.c

gcc -dynamic -I/Library/Frameworks/Python.framework/Versions/Current/include/python2.7 -c palindrome_wrap.c

如果我执行这些命令,因为本书说我没有看到任何明显的问题,但是下一步有问题:

gcc -dynamiclib palindrome_wrap.o palindrome.o -o _palindrome.so -Wl, -undefined, dynamic_lookup
i686-apple-darwin11-llvm-gcc-4.2: dynamic_lookup: No such file or directory 

我正在运行的例子是逐字逐句地来自教科书,它是一本初学者书,我自然只是在学习使用c和c ++为其他语言制作库时感到困惑。我怀疑可能是因为书写了以来某些事情已经改变了mac上的文件或目录(我选择了mac来学习这个,因为它比unix更接近于windows)。编译步骤对我来说仍然相当神秘,所以希望有人知道这里有什么问题。

谢谢,

Ben W。

1 个答案:

答案 0 :(得分:0)

gcc选项以逗号结尾,“-Wl -undefined dynamic_lookup”。至少它对我有用。