linux主机:ubuntu-14.04
交叉编译器:gcc version 4.6.2 20110630 (prerelease)
开发板kernel:linux-3.0.35
开发板:MarsBoard(imx6d)
busybox:BusyBox v1.20.2 () multi-call binary.
1、下载python源码和ubuntu主机一样的版本
ubuntu@ubuntu:~/marsboard/down_lib/python3.4$ sudo apt-get source python3.4
ubuntu@ubuntu:~/marsboard/down_lib/python3.4$ ls -l
总用量 12668
drwxr-xr-x 19 ubuntu ubuntu 4096 8月 10 21:02 python3.4-3.4.3
-rw-r--r-- 1 ubuntu ubuntu 266940 11月 13 2018 python3.4_3.4.3-1ubuntu1~14.04.7.debian.tar.gz
-rw-r--r-- 1 ubuntu ubuntu 3243 11月 13 2018 python3.4_3.4.3-1ubuntu1~14.04.7.dsc
-rw-r--r-- 1 ubuntu ubuntu 12690456 2月 27 2015 python3.4_3.4.3.orig.tar.xz
2、首先配置python的 configure,新建make.sh脚本
#! /bin/sh
./configure --build=x86_64-linux-gnu --host=arm-none-linux-gnueabi \
--target=arm-none-linux-gnueabi \
--disable-ipv6 \
--prefix=$PWD/arm_python \
ac_cv_file__dev_ptmx=yes \
ac_cv_file__dev_ptc=yes \
--enable-shared \
--silent
#?--silent去掉configure过程中的垃圾信息,只输出warning及以上的关键信息
3、执行make.sh脚本生成Makefile等编译文件
ubuntu@ubuntu:~/marsboard/down_lib/python3.4/python3.4-3.4.3$ ./make.sh
4、编译、安装二进制文件和库文件
# 第一步编译:编译之前适当修改Makefile,在CONFIGURE_LDFLAGS后面
# 添加 -s -lrt 两个选项,第一个是清除不必要的文件,第二个是去掉错误库连接的提示
make
# 第二部安装
make install
5、把生成的arm_python文件夹下面的所有文件复制到~/rootfs/opt目录下,然后添加环境变量
打开~/rootfs/etc/profile添加如下内容
export PATH=$PATH:/opt/arm_python/bin
export LD_LIBRARY_PATH=/opt/arm_python/lib
6、在开发板的调试串口中运行python检查:
root@marsboard /$ python3.4 -V
Python 3.4.3
移植成功
|