我正在尝试按照以下步骤编译一些C代码以导入Python:http://csl.sublevel3.org/C-functions-from-Python/
我可以使用建议的调用来编译它:
gcc -dynamiclib -I/usr/include/python2.3/ -lpython2.3 -o myModule.dylib myModule.c
但是我正在使用Python 3,我已经搞砸了并解决了一堆编译器错误,以此结束:
gcc -dynamiclib -I/Library/Frameworks/Python.framework/Versions/3.2/include/python3.2m/ -lpython3.2m -o myModule.dylib myModule.c
但现在我卡住了,这会产生以下错误:
ld: library not found for -lpython3.2m
从我有限的知识中我尝试了一些事情。我发现我有两个存在Python版本的位置:
/System/Library/Frameworks/Python.framework/Versions
还有:
/Library/Frameworks/Python.framework/Versions
Python 3.2位于第二位,所以我认为我需要告诉gcc在哪里搜索解析-lpython3.2m?或者-lpython3.2m是错误的,我尝试过-lpython3.2但是我从ld得到了相同类型的错误。
其他可能有用的事实:
Mac OS 10.6.8
从您从Python.org获得的DMG安装的Python 3.2
如果有任何其他信息我可以帮助您帮助我,请告诉我
答案 0 :(得分:3)
要告诉gcc
其他目录搜索库,请使用-L
选项,类似于您已使用的-I
选项。像-L/Library/Frameworks/Python.framework/Versions/3.2/lib
这样的东西,我猜。