在离线嵌入式ARM板卡中搭建python环境

第三方库下载:PyPI · The Python Package Index

1、目的

       在一个离线的arm平台上想运行python语言写的算法,尝试在arm平台中搭建python运行环境,并安装算法所需的第三方库。

2、整体思路

        (1)交叉编译zlib库:提供数据压缩和解压缩功能的库。Python 很多模块和功能依赖于数据的压缩和解压缩操作。

        (2)交叉编译ctypes库:允许 Python 代码调用 C 语言编写的动态链接库(DLL 或共享对象)。在交叉编译 Python 时,确保 ctypes 库正常工作非常重要,因为许多系统级别的功能和第三方库都是用 C 语言编写的。通过 ctypes,Python 可以利用这些 C 库的强大功能,扩展自身的能力边界。例如,访问底层硬件接口、调用操作系统特定的函数等。如果没有安装 ctypes 库,Python 将无法直接与这些 C 库进行交互,从而限制了其在系统级编程和与其他 C 语言组件集成方面的能力。

        (3)交叉编译openssl库:一个强大的安全套接字层密码库,提供了对 SSL/TLS 协议的支持,以及各种加密算法和工具。Python 中的许多网络应用,特别是涉及到安全通信的应用,如 https 协议的网络请求、安全的邮件传输等,都依赖于 openssl 库来实现加密和认证功能。如果不安装 openssl 库,Python 的网络安全功能将受到严重影响,无法进行安全的网络通信,容易受到各种网络攻击。

        (4)先在x86主机上安装x86主机版本的python,称之为x86-python

        (5)交叉编译arm机版本的python,称之为arm-python

3、交叉编译步骤

        3.1编译x86_zlib

        (1)下载zlib源码,我下载的是zlib1.2.11版本
        (2)解压缩包,依赖库的源码包放在~/work/python-arm/目录下
        (3)cd zlib-1.2.11
        (4)设置编译环境:  ./configure
        (5)执行编译安装 make&&make install ,此时安装成功(注:make install时可能会报错权限不够,此时执行sudo make install避免错误。)

        3.2交叉编译arm_zlib

        (1)此时在~/work/python-arm/zlib-1.2.11目录下

        (2)新建脚本config-arm.sh,设置交叉编译器和编译环境,执行脚本:

                #!/bin/sh

                export CC=arm-linux-gnueabihf-gcc

                export CXX=arm-linux-gnueabihf-g++

                export  AR=arm-linux-gnueabihf-ar

                export  RANLIB=arm-l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值