【发布时间】:2016-06-10 22:42:29
【问题描述】:
对于用 C 编写的程序,我需要使用仅在 Python 中可用的功能。我找到了几个可以帮助我的资源,但 one of them 给了我编译代码的命令:
gcc -I/usr/include/python2.7 prog.c -lpython2.7 -o prog -Wall && ./prog
我不得不把它改成
gcc -I/usr/include/python3.4 prog.c -lpython3.4 -o prog -Wall && ./prog
但编译器返回:
/usr/bin/ld: cannot find -lpython3.4 collect2: error: ld returned 1 exit status
这是我第一次使用gcc,所以即使看示例我也真的不明白该怎么做。
【问题讨论】:
-
您使用哪种操作系统?
-
您可能需要为您的系统安装相关软件包。您可能想先看看relevant section of the Python manual
-
我做了,但我不明白为什么它解释了当另一个人似乎设法在没有它们的情况下编译他的代码时,我必须使用它给出的命令来找到正确的标志。
-
如果您能说出您想使用哪些功能,可能还有其他方法(例如现有的 C 数据结构库)来访问这些功能,这比从 C 访问 Python 库更容易。跨度>
-
尝试以超级用户身份运行
ldconfig,同时安装一些我发现有必要调用它的C库,然后才能使用-l