Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >移植python2.7.3到arm li

移植python2.7.3到arm li

作者头像
py3study
发布于 2020-01-06 03:29:33
发布于 2020-01-06 03:29:33
4K1
举报
文章被收录于专栏:python3python3

1.本文链接地址

http://blog.csdn.net/lz_obj/article/details/52620276

2.环境

linux系统版本:Ubuntu 10.04

交叉编译工具:arm-linux-gcc4.5.2

嵌入式linux内核版本:Linux  2.6

3.操作步骤

(1)下载源码包Python-2.7.3.tgz和补丁Python-2.7.3-xcompile.patch,https://www.python.org/download/releases/2.7.3/

(2)将这两个文件放入/home/中,解压压缩包tar -xvzf Python-2.7.3.tgz,把补丁移动到Python-2.7.3/中,mv  Python-2.7.3-xcompile.patch  Python-2.7.3/,进入解压后的文件夹中cd Python-2.7.3

(3) 运行配置文件./configure

(4)make python Parser/pgen

(5)相应文件改名mv  python  hostpython,mv  Parser/pgen  Parser/hostpgen

(6)清理操作 make distclean

(7)打补丁patch -p1 < Python-2.7.3-xcompile.patch

(8)设置参数

  CC=arm-none-linux-gnueabi-gcc

  CXX=arm-none-linux-gnueabi-g++

  AR=arm-none-linux-gnueabi-ar

  RANLIB=arm-none-linux-gnueabi-ranlib

/* 此处设置根据个人情况,可与9运行配置文件一并执行 */

(9)修改setup.py

/* 

说明:此处涉及python 调用sqlite3接口 参考 http://www.cnblogs.com/hit-python/articles/4081673.html  详细操作可以查看这篇文章,写的很详细,

我的sqlite3(arm linux)是之前编译好的,整个文件夹(包括bin/ lib/ ...),路径为/home/sqlite3_armlinux

*/

做如下修改

修改为:sqlite_inc_paths = ['/home/sqlite3_armlinux' + '/include' ]

               sqlite_inc_paths = ['/home/sqlite3_armlinux' + '/include' ]

修改为:sqlite_inc_paths = ['/home/sqlite3_armlinux' + '/lib' ]

               sqlite_inc_paths = ['/home/sqlite3_armlinux' + '/lib' ]

保存setup.py修改,运行配置文件 ./configure--host=arm-none-linux-gnueabi --prefix=/python

(10)make HOSTPYTHON=./hostpython HOSTPGEN=./Parser/hostpgenBLDSHARED="arm-none-linux-gnueabi-gcc -shared"CROSS_COMPILE=arm-none-linux-gnueabi- CROSS_COMPILE_TARGET=yes

(11)make install HOSTPYTHON=./hostpython BLDSHARED="arm-none-linux-gnueabi-gcc-shared" CROSS_COMPILE=arm-none-linux-gnueabi- CROSS_COMPILE_TARGET=yesprefix=/home/Python-2.7.3/_install

/* 10.11此处一些设置根据个人情况 */

(12)将_install文件夹移动到开发板中

4.运行截图

5.参考资料

http://randomsplat.com/id5-cross-compiling-python-for-embedded-linux.html

http://www.cnx-software.com/2011/02/04/cross-compiling-python-for-mips-and-arm-platforms/

http://www.cnblogs.com/hit-python/articles/4081673.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
你好,我把编译生成的文件放在目标机器上,执行时报“No such file or directory”错误,请问是什么原因?谢谢啊
你好,我把编译生成的文件放在目标机器上,执行时报“No such file or directory”错误,请问是什么原因?谢谢啊
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
python能开发arm_获得通用技能的方法
看了很多资料介绍如何将python移植到嵌入式设备当中,但总感觉杂乱五章,还移植不成功,但是经过我的多方摸索,成功的探索出了一条阳光大道,供各位网友借鉴参考。
全栈程序员站长
2022/11/07
9570
python能开发arm_获得通用技能的方法
移植Python2.7到ARM-LINUX嵌入式平台
笔者长期在ARM-LINUX嵌入式平台使用C语言开发。硬件IO操作只能用C确实没办法,但是应用程序用C简直就苦逼了,程序复杂一点,各种越界、指针错误、诡异死机、segment fault、内存泄漏、core dump、编译找不到头文件、依赖库,解析个字符费老劲,轮子太少纯靠白手起家。自从把Python移植到嵌入式平台,用C写完IO的Python扩展库然后用Python写应用程序完全就是摧枯拉朽般存在。
Python中文社区
2018/07/26
8.3K1
如何交叉编译Python到ARM-Lin
我需要在Arm9的s3c2410 CPU上运行python,以下是我的编译过程。
py3study
2020/01/09
2.8K0
DM8168 GPIO驱动与測试程序
交叉编译測试程序:arm-none-linux-gnueabi-gcc -o gpio_test gpio_test.c
全栈程序员站长
2022/07/12
4400
什么?Arm放弃了自家的汇编语法?改投GNU了?
那么多对于我们初学者来说要学习哪种风格呢?答案是肯定的,学习GNU风格的汇编代码,因为做Linux驱动开发必须掌握的linux内核、uboot,而这两个软件就是GNU风格的。
GorgonMeducer 傻孩子
2020/12/22
2.4K0
什么?Arm放弃了自家的汇编语法?改投GNU了?
fl2440 uboot 移植总结
   root@ubuntu:/home/hfl/hflsamb/uboot/u-boot-2010.09#vi boards.cfg
用户4148957
2022/06/14
6410
移植Python到arm linux系统
4.在Python-3.6.2目录下新建mylib文件夹,用于存放生成的可移植文件:
py3study
2020/01/10
16.9K1
Yuzuki Lizard 全志V851S开发板 –移植 QT5.12.9教程
docker pull registry.cn-hangzhou.aliyuncs.com/gloomyghost/yuzukilizard
阿志小管家
2024/02/02
3280
Yuzuki Lizard 全志V851S开发板 –移植 QT5.12.9教程
zynq平台蓝牙协议栈移植
虚拟机环境:Ubuntu16.04.3 编译安装bluez-libs-3.36 下载 (http://www.bluez.org/download/) ./configure --prefix=/opt/bluez/bluez-libs-3.36 --host=arm-linux --target=arm-linux CC=arm-linux-gnueabihf-gcc make sudo make install 编译安装expat-2.5.0 下载 (https://github.com/libe
Linux兵工厂
2023/02/28
2.7K0
zynq平台蓝牙协议栈移植
鸿蒙系统研究之二:内核编译
一个操作系统,最重要的部分无疑是内核。鸿蒙系统声称自研了内核,从之前开源的 OpenHarmony OS 代码中可以看到,是一款名为 LiteOS 的面向 IoT 领域构建的轻量级物联网操作系统。LiteOS 又有两个版本:LiteOS-A 和 LiteOS-M。而 OpenHarmony OS 2.0 针对手机、平板等富资源设备,则使用的是 Linux 操作系统。
云水木石
2021/07/14
2.6K0
推荐一款不错的嵌入式GUI(玲珑GUI)及在嵌入式linux上的移植
玲珑GUI(LLGUI)是一套使用简单、低价的单片机GUI解决方案。可以用来代替串口屏、组态,降低产品成本,产品软硬件自主可控。 配套界面开发软件,图形化编辑界面,生成C代码。
杨永贞
2022/01/07
2.1K0
推荐一款不错的嵌入式GUI(玲珑GUI)及在嵌入式linux上的移植
从零使用qemu模拟器搭建arm运行环境
提醒:本文已有自动构建的项目支持,请移步到:再续【从零使用qemu模拟器搭建arm运行环境】
全栈程序员站长
2022/06/28
2.8K0
Python的交叉编译移植至arm板
虽然网上有那么多python的交叉编译移植教程,但是方法差异蛮大,需要根据实际开发板的型号做调整,以下是适用于海思的板子移植过程。
jianghaibobo
2019/08/02
2.9K0
ucgui在嵌入式linux下的移植
前几天在研究minigui,照着官方的步骤编译,竟然一堆错,不是缺这库,就是缺那库。好不容易快到了最后一步,竟然再链接时告诉我用的64位系统不兼容32位的minigui。
杨永贞
2020/08/04
2K0
freetype的交叉编译及在嵌入式linux上的简单使用及改变字体背景和颜色
FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。它支持单色位图、反走样位图的渲染。FreeType库是高度模块化的程序库,虽然它是使用ANSI C开发,但是采用面向对象的思想,因此,FreeType的用户可以灵活地对它进行裁剪。关于freetype的详细信息可以参考freetype的官方网站:https://www.freetype.org/来获取更多相关的信息。
杨永贞
2020/12/16
5.3K0
freetype的交叉编译及在嵌入式linux上的简单使用及改变字体背景和颜色
移植python到小米路由器记录。
最近抢了一个小米路由器,研究了一下,总的来说现在看起来功能还很少。现在比较有用的功能就是,远程下载功能,支持迅雷,电驴等,不过现在看电影啥的都是直接在线看的,基本上也很少用。检测连接的智能设备,这个功能可以随时查看是否有人曾网,当然也可以用来在远程监控家里都有谁在用路由器。以后应该会有更多的功能扩展,不过这应该是一个漫长的过程,我先自己弄点东西上去玩玩,首先把常用的python移植上去。
py3study
2020/01/08
2.5K0
鸿蒙系统研究之三:迈出平台移植第一步
OpenHarmony OS 2.0 发布时,标准系统只支持 Hi3516DV300 一种硬件平台,而 Android、IOS 均提供了模拟器供开发人员使用。这也可以理解,毕竟华为长期以来都是设备供应商,专长是硬件,在软件开发方面缺少底蕴。鸿蒙应用开发提供了模拟器,但那是真机模拟器,需要接入到华为的开发平台才能使用。
云水木石
2021/07/14
2K0
python及第三方库交叉编译
  网上关于python的交叉编译的文章很多,但是关于python第三库的交叉编译的文章就比较少了,而且很多标题是第三方库的交叉编译,但是实际上用到的都是不需要交叉编译就能用的库,可参考性不强,最近关于python及其第三方库的交叉编译也踩了不少坑,记录一下!
Se7eN_HOU
2022/10/05
5.3K1
python及第三方库交叉编译
Android源码下载与编译全过程
摘要:本文是根据自己亲手编译源码过程所总结的一个开发笔记(包括编译流程,可能遇到的错误,以及错误解决的办法等),首先介绍了基于Ubuntu9.10的编译环境的建立,再次介绍了整个源码的获取方式,最后讲解了源码的编译过程(包括源码的打包处理,u-boot的编译,Linux的kernel的编译,android文件系统的编译)。本文各个操作的开发环境是基于VMware7.10虚拟机的Ubuntu9.10环境。当然不同的版本的Linux可能操作过程有点差异,所遇到的错误可能不同,但是各个操作思想是一致的。
用户4148957
2022/06/14
1.9K0
交叉编译环境的安装
我们在Linux中使用自带的gcc和g++编译器进行编译的程序是针对X86架构的。而我们开发板大多都是ARM或者其他架构的开发板,我们就需要编译出针对其他架构的程序。
手撕代码八百里
2021/09/26
2.4K0
相关推荐
python能开发arm_获得通用技能的方法
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档