ELF 1技术贴|如何将Python3.6.9移植到开发板上

描述

在ELF 1开发板的Linux 4.1.15 eMMC镜像中,默认预装了Python 2.7。为了适应更多应用场景,有些小伙伴可能需要移植其他版本的Python,下面将以Python 3.6.9为例详细介绍如何进行交叉编译并移植到ELF 1开发板上。

网址:https://www.python.org/ftp/python/

下载Python-3.6.9.tar.xz压缩文件。

 

1、拷贝Python-3.6.9.tar.xz到开发环境/home/elf/work目录下解压:

elf@ubuntu:~/work$ tar xvf Python-3.6.9.tar.xz

 

2、进入Python-3.6.9目录:

elf@ubuntu:~/work$ cd Python-3.6.9/

 

3、创建新目录:

elf@ubuntu:~/work/Python-3.6.9$ mkdir build-arm

 

4、虚拟机安装Python 3.6.9:

(1)编译:

elf@ubuntu:~/work/Python-3.6.9$ ./configure elf@ubuntu:~/work/Python-3.6.9$ make elf@ubuntu:~/work/Python-3.6.9$ sudo make install

 

编译报错,执行如下命令:

elf@ubuntu:~/work/Python-3.6.9$ sudo apt-get install zlib*

再次sudo make install,编译成功。

 

(2)清除编译临时生成的中间文件,为交叉编译做准备:

elf@ubuntu:~/work/Python-3.6.9$ sudo make clean

 

5、交叉编译Python:

(1)进入build-arm目录:

elf@ubuntu:~/work/Python-3.6.9$ cd build-arm/

 

(2)设置交叉编译环境变量:

elf@ubuntu:~/work/Python-3.6.9/build-arm$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

 

(3)设置CONFIG_SITE环境变量:

elf@ubuntu:~/work/Python-3.6.9/build-arm$ echo ac_cv_file__dev_ptmx=no > config.site elf@ubuntu:~/work/Python-3.6.9/build-arm$ echo ac_cv_file__dev_ptc=no >> config.site elf@ubuntu:~/work/Python-3.6.9/build-arm$ export CONFIG_SITE=config.site

 

(4)交叉编译:

elf@ubuntu:~/work/Python-3.6.9/build-arm$ ../configure --host=arm-poky-linux-gnueabi --build=x86_64-linux-gnu --prefix=$PWD/_install --disable-ipv6 elf@ubuntu:~/work/Python-3.6.9/build-arm$ make elf@ubuntu:~/work/Python-3.6.9/build-arm$ make install

 

编译报错,执行如下命令:

elf@ubuntu:~/work/Python-3.6.9/build-arm$ sudo rm /usr/bin/lsb_release

再次make install编译,在_install目录下会生成bin、include、lib、share文件夹。
 

6、将交叉编译好的Python移植到ARM开发板:

(1)在_install目录下打包所有目录:

elf@ubuntu:~/work/Python-3.6.9/build-arm/_install$ tar cvf python3.6.tar.bz2 ./

 

(2)将生成的压缩包文件放到开发板文件系统根目录下进行解压:

root@ELF1:~# cd / root@ELF1:/# cp /run/media/sda1/python3.6.tar.bz2 . root@ELF1:/# tar xvf python3.6.tar.bz2

 

(3)设置环境变量:

root@ELF1:/# export PYTHONPATH=$PYTHONPATH:/lib/python3.6 root@ELF1:/# export PYTHONHOME=$PYTHONHOME:/lib/python3.6

 

(4)运行测试:

root@ELF1:/# python3.6 Python 3.6.9 (default, Nov 10 2023, 03:00:36) [GCC 5.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> sys.version '3.6.9 (default, Nov 10 2023, 03:00:36) \n[GCC 5.3.0]'

按Ctrl+D可退出Python。
 

关于如何成功将Python 3.6.9移植到ELF 1开发板中的过程已经详尽介绍完毕,希望以上的指南能对各位小伙伴提供切实的帮助!

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分