交叉编译python2.7.14到ARM-Linux下

基本参考这个文章

https://blog.csdn.net/xiwenfuor/article/details/38384687

其中改动为交叉编译链改为了自己的,我下载的源代码为2.7.14(python2的最后一版),没有补丁文件所有没有打补丁。

先编译PC版

./configure
make python Parser/pgen
mv python hostpython
mv Parser/pgen Parser/hostpgen
make distclean

参考文章增加了如下命令

echo ac_cv_file__dev_ptmx=yes > config.site
echo ac_cv_file__dev_ptc=yes >> config.site
export CONFIG_SITE=config.site

配置命令增加了

--disable-ipv6

最终配置命令为

CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ AR=arm-linux-gnueabihf-ar RANLIB=arm-linux-gnueabihf-ranlib ./configure --host=arm-linux --build=x86_64-linux-gnu --prefix=/home/vmuser/python2.7/arm-python --disable-ipv6
chmod 777 ./setup.py
make HOSTPYTHON=./hostpython HOSTPGEN=./Parser/hostpgen BLDSHARED="arm-linux-gnueabihf-gcc -shared" CROSS_COMPILE=arm-linux-gnueabihf- CROSS_COMPILE_TARGET=yes HOSTARCH=arm-linux BUILDARCH=x86_64-linux-gnu
make install HOSTPYTHON=./hostpython BLDSHARED="arm-linux-gnueabihf-gcc -shared" CROSS_COMPILE=arm-linux-gnueabihf- CROSS_COMPILE_TARGET=yes prefix=/home/vmuser/python2.7/arm-python

最后将/home/vmuser/python2.7/arm-python文件夹放入ARM版就可以用了,再bin目录下运行python2.7,就能看到执行起来了

然后将可执行和库加入系统变量比如在ARM板上执行:

export PATH='/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/program/arm-python/bin'
export LD_LIBRARY_PATH='/program/arm-python/lib'

然后就能运行了

导入模块还有问题,参考http://www.cnblogs.com/hit-python/p/4079506.html修改中。

你可能感兴趣的:(嵌入式linux软件移植)