我正在尝试为ARM编译Python(版本3.1.3),按照这篇指南的说明进行操作。
以下是我在Ubuntu 12上执行的命令:
CC=arm-linux-gnueabi-gcc CXX=arm-linux-gnueabi-g++ AR=arm-linux-gnueabi-ar RANLIB=arm-linux-gnueabi-ranlib ./configure --host --build=x86_64-linux-gnu --prefix=/python
make HOSTPYTHON=./hostpython HOSTPGEN=./Parser/hostpgen BLDSHARED="arm-linux-gnueabi-gcc -shared" CROSS_COMPILE=arm-linux-gnueabi- CROSS_COMPILE_TARGET=yes HOSTARCH=x86_64-linux-gnu BUILDARCH=x86_64-linux-gnu
make install HOSTPYTHON=./hostpython BLDSHARED="arm-linux-gnueabi-gcc -shared" CROSS_COMPILE=arm-linux-gnueabi- CROSS_COMPILE_TARGET=yes prefix=~/Python-2.7.2/_install
注意以下几点:
- 当执行第一条命令时,如果 --host 设为 arm-linux,命令将不会执行,并提示我应该使用“--host”进行交叉编译。这就是为什么我没有设置它的原因。
- 运行第二行时,我得到如下信息:
configure: 警告:缓存变量ac_cv_host包含换行符。
无法配置ctypes模块Python构建完成,但未找到构建以下模块所需的必要组件:
_curses _curses_panel _dbm
_gdbm _hashlib _sqlite3
_ssl bz2 ossaudiodev readline zlib
若要查找必要组件,请查看setup.py中detect_modules()函数,并查找相应模块的名称。以下模块构建失败:
_tkinter
在运行第三行命令时,我遇到了类似的错误,但我想这是因为上面的命令没有起作用造成的。
我正在寻求帮助来解决这个问题。