iMx6+arm-none-linux-gnueabi-gcc+Python2.7.12交叉编译,解决import time socket multiprocessing等内置库缺失问题

借鉴网址:

1.https://www.cnblogs.com/hit-python/articles/4079506.html

2.http://xiaoxia.org/2013/09/13/python-on-tomato/

1.下载Python-2.7.12,官网网址不再列出。

2.用shell终端,打开Python-2.7.12的目录,然后在Modules文件夹下面,修改Setup.dist文件。编辑Modules/Setup.dist,把需要用到的模块,去掉注释。现在去掉注释的库见下图:

接下来进行交叉编译。

3.这样,就会解决import time math multiprocessing 等出现找到不到模块的情况。

接下来进行交叉编译。

4.在Python-2.7.12目录下,运行

~/Python-2.7.12$./configure

5.编译PC版 python Parser/pgen

~/Python-2.7.12$make python Parser/pgen

6.将生成的PC版移动至hostpython

~/Python-2.7.12$mv python hostpython

7.将生成的PC版解释器移动至Parser/hostpgen

~/Python-2.7.12$mv Parser/pgen Parser/hostpgen

8.清除不必要的文件

~/Python-2.7.12$make distclean

交叉编译Python部分

9.设置交叉编译器(最好设置为绝对路径)

~/Python-2.7.12$CC=arm-none-linux-gnueabi-gcc

10.设置C++交叉编译器(最好设置为绝对路径)

~/Python-2.7.12$CXX=arm-none-linux-gnueabi-g++

11.设置AR(最好设置为绝对路径)

~/Python-2.7.12$AR=arm-none-linux-gnueabi-ar

12.设置RANLIB(最好设置为绝对路径)

~/Python-2.7.12$RANLIB=arm-none-linux-gnueabi-ranlib

13.生成符合交叉编译器的MakeFile

~/Python-2.7.12$./configure ac_cv_file__dev_ptc=no ac_cv_file__dev_ptmx=no --disable-ipv6 --build=x86_64-linux-gnu --host=arm-none-linux-gnueabi --prefix=/python

14.执行make指令

~/Python-2.7.12$make HOSTPYTHON=./hostpython HOSTPGEN=./Parser/hostpgen BLDSHARED="arm-none-linux-gnueabi-gcc -shared" CROSS_COMPILE=arm-none-linux-gnueabi-CROSS_COMPILE_TARGET=yes

15.make install安装到指定文件

~/Python-2.7.12$make install HOSTPYTHON=./hostpython BLDSHARED="arm-none-linux-gnueabi-gcc -shared" CROSS_COMPILE=arm-none-linux-gnueabi-CROSS_COMPILE_TARGET=yes prefix=/home/zhy/Python-2.7.12/_install

红色部分为交叉编译完成后安装的路径,_install里面有4个文件,表示编译成功。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值