我刚刚开始使用Cython并且正在尝试编译一个" Hello World"脚本。我正在尝试使用gcc -Os /User/Documents/Python/Test\ Python/helloCopy.c -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -l
,但我不知道在-l
之后要添加什么。其他论坛页面在链接器命令行"中包含-lpython2.7(或您正在使用的任何Python版本)。但那会产生ld: library not found for -lpython3.5
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我应该将-l
定向到特定文件夹吗?
答案 0 :(得分:0)
我不知道您使用的资源是什么,但this没有说明-l
标志。它建议
cython -a helloCopy.pyx
这会创建一个yourmod.c文件,-a开关会生成一个带注释的源代码html文件。传递-h标志以获取支持标志的完整列表。
gcc -shared -pthread -fPIC -fwrapv -O2 -Wall -fno-strict-aliasing -I/usr/include/python2.7 -o helloCopy.so helloCopy.c
(Linux)的
在macOS上我会尝试使用
进行编译gcc -I/usr/bin/python -o helloCopy.so helloCopy.c
使用标准版本的Python。