【发布时间】:2013-06-20 01:28:44
【问题描述】:
这是我的情况。我正在尝试通过cx_Freeze 打包一个用 Python 3.3 编写的 Linux(在 Ubuntu 13.04 上)游戏。美好的。我通过sudo apt-get install cx-freeze 安装了它。即使安装了,也没有出现。所以它是 Python 2 版本。美好的。然后我从网站上下载了源代码并尝试用python3 ./setup.py build 编译它。这就是事情分崩离析的地方。我从编译器得到这个错误:
/usr/bin/ld: cannot find -lpython3.3
collect2: error: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
我使用的是从源代码编译的 Python 3.3.2。有什么建议吗?
【问题讨论】:
-
您需要使用共享库构建 Python(这就是它在发行版包中的方式)。如果您在 Ubuntu 中安装
python3和python3-dev,它应该可以工作。 -
不过,我已经安装了它们。
-
对不起,我正在考虑使用那些而不是你自己编译的版本。使用从源代码编译的 Python 重要吗?如果是这样,您需要找到一个标志来使用共享库编译它,因为我认为这不是默认值。
-
不,没有必要。我只是从源代码构建的,因为我想用
-Ofast而不是-O3(我认为)作为deb 编译它。不过,我不确定我安装了哪个 deb(不知道 Python 3.3.2 是否是 Ubuntu 13.04 中的默认版本)。 -
Raring 目前有 3.3.1 - 你可以查看here。
标签: python-3.x compiler-errors package cx-freeze