移植Python2到TQ2440
环境
Python:2.7.13
开发板: TQ2440
工具链: arm-none-linux-gnueabi-gcc 4.8.3
概述
前面已经把Python3移植到TQ2440上面的,现在我们移植Python2,基本跟Python3移植步骤类似。
正文
一、工具链
参考 http://www.cnblogs.com/pengdonglin137/p/6740164.html#_lab2_2_0
二、配置
下面是配置脚本mk1_conf.sh:
#!/bin/bash /home/pengdonglin/disk_ext/Python/Python2/Python-2.7./configure --prefix=`pwd` \
--host=arm-linux \
--build=x86_64-linux-gnu \
--enable-ipv6 \
--enable-shared \
ac_cv_file__dev_ptmx="yes" \
ac_cv_file__dev_ptc="no" \
LDFLAGS="-L/home/pengdonglin/disk_ext/TQ2440/rootfs/SQlite3/lib \
-L/home/pengdonglin/disk_ext/TQ2440/rootfs/Readline/lib \
-L/home/pengdonglin/disk_ext/TQ2440/rootfs/Termcap/lib \
-L/home/pengdonglin/disk_ext/TQ2440/rootfs/Zlib/lib"\
CPPFLAGS="-I/home/pengdonglin/disk_ext/TQ2440/rootfs/SQlite3/include \
-I/home/pengdonglin/disk_ext/TQ2440/rootfs/Readline/include \
-I/home/pengdonglin/disk_ext/TQ2440/rootfs/Termcap/include \
-I/home/pengdonglin/disk_ext/TQ2440/rootfs/Zlib/include"\
LDLAST="-L/home/pengdonglin/disk_ext/TQ2440/rootfs/SQlite3/lib \
-L/home/pengdonglin/disk_ext/TQ2440/rootfs/Readline/lib \
-L/home/pengdonglin/disk_ext/TQ2440/rootfs/Termcap/lib \
-L/home/pengdonglin/disk_ext/TQ2440/rootfs/Zlib/lib"
配置完成之后,修改Modules/Setup,打开readline,将下面这行取消注释:
readline readline.c -lreadline -ltermcap
SVNVERSION=>---svnversion $(srcdir)
SVNVERSION=
三、编译
#!/bin/bash make HOSTPYTHON=/home/pengdonglin/disk_ext/Python/Python2/x86_64/python \
HOSTPGEN=/home/pengdonglin/disk_ext/Python/Python2/x86_64/Parser/pgen \
BLDSHARED="arm-linux-gcc -shared" \
CROSS_COMPILE=arm-linux- \
CROSS_COMPILE_TARGET=yes \
HOSTARCH=arm-linux \
BUILDARCH=x86_64-linux-gnu \
-j4
四、安装
#!/bin/bash make install HOSTPYTHON=/home/pengdonglin/disk_ext/Python/Python2/x86_64/python \
BLDSHARED="arm-linux-gcc -shared" \
CROSS_COMPILE=arm-linux- \
CROSS_COMPILE_TARGET=yes \
prefix=`pwd`
五、测试
[root@tq2440 ~]# python2 /usr/lib/python2./test/test___all__.py
test_all (__main__.AllTest) ... BaseHTTPServer
Bastion
CGIHTTPServer
ConfigParser
Cookie
DocXMLRPCServer
HTMLParser
MimeWriter
... ...
ok
----------------------------------------------------------------------
Ran test in .408s
OK
移植Python2到TQ2440的更多相关文章
- 移植Python3到TQ2440(一)
平台 硬件:TQ2440 64MB内存 256MB NandFlash bootloader:U-Boot 2015.04 kernel:linux-4.9 Python: Python-3.6.0 ...
- 移植Python3到TQ2440(二)
接着前一篇博文. 在上一篇博文中我们用NFS挂载根文件系统的方式启动了系统,接下来我们把移植了Python3的根文件系统固化到NandFlash中,但是由于linux-4.9目前不支持Yaffs2文件 ...
- python技巧31[移植python2.x到3.x]
我们都知道python从2.x升级到3.x的过程中有一些不兼容的改动,但是有时还我们不得不将2.x的程序升级到3.x. 主要不兼容如下图: 移植过程: 1) 确保存在的代码有足够的测试覆盖.从2.x到 ...
- 让TQ2440也用上设备树(2)
作者 作者:彭東林 郵箱:pengdonglin137@163.com QQ:405728433 软件版本 Linux-4.10.17 概述 在之前的博客里介绍了TQ2440上移植设备树的方法,其实, ...
- 基于设备树的TQ2440的中断(1)
作者 姓名:彭东林 E-mail:pengdonglin137@163.com QQ:405728433 平台 板子:TQ2440 内核:Linux-4.9 u-boot: 2015.04 工具链: ...
- OpenCV在ARM-linux上的移植过程遇到的问题3---共享库中嵌套库居然带路径【未解决】
[Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题3-共享库中嵌套库居然带路径[未解决] 标签(空格分隔): [Linux开发] 移植opencv到tq2440 一.下载open ...
- python总结--目录(转)
python模块 [Python]随机数与随机字符串 举例说明Python的CSV模块 python模块之smtplib: 用python发送SSL/TLS安全邮件 python模块之e ...
- linux驱动之一语点破天机
<const 关键字> 在嵌入式系开发中,const关键字就是“只读”的意思 <为什么要ARM需要进行C语言环境的初始化> 在汇编情况下,指令的跳转,保护现场需要保存的数据 ...
- u-boot-2015.04 在tq2440上的移植(使用spl引导u-boot)
本次移植跟以往的不同之处是采用了spl来引导u-boot,参考了博客http://blog.csdn.net/fulinus/article/details/42738641 下载链接:http:// ...
随机推荐
- camera驱动框架分析(上)
前言 camera驱动框架涉及到的知识点比较多,特别是camera本身的接口就有很多,有些是直接连接到soc的camif口上的,有些是通过usb接口导出的,如usb camera.我这里主要讨论前者, ...
- Jquery ajax json 不执行success的原因 坑爹
最近在看jQuery的API文档,在使用到jQuery的ajax时,如果指定了dataType为json,老是不执行success回调,而是执行了error回调函数,极度郁闷.后面改为1.2.6版本可 ...
- 《Look Mom, I don’t use Shellcode》议题解析
0x0 前言 <Look Mom, I don’t use Shellcode>是2016年Syscan360上讲过的一个议题,这个议题的副标题是"Browser Exploit ...
- mysql 索引理解
数据的查询,都需要将数据从磁盘中加载到内存中进行运算加载,索引的出现,让原来每个数据块做一次IO减少为区间范围的快速定位,来减少块的io次数. 如上图,是一颗b+树,关于b+树的定义可以参见B+树,这 ...
- 【LOJ】#2117. 「HNOI2015」实验比较
题解 把所有=的点连起来,一个图合法肯定它是一个有向树森林 我们新建一个点,把这个点和其他所有树的树根连起来 定义\(dp[u][j]\)表示第u个点长度为j的序列的方案数 转移方法是 \(dp[u] ...
- 000 在什么位置写js代码
一:介绍 1.DOM 2.节点分类 节点及其类型: 1). 元素节点 2). 属性节点: 元素的属性, 可以直接通过属性的方式来操作. 3). 文本节点: 是元素节点的子节点, 其内容为文本. 二:J ...
- MySQL查询语句执行过程及性能优化-查询过程及优化方法(JOIN/ORDER BY)
在上一篇文章MySQL查询语句执行过程及性能优化-基本概念和EXPLAIN语句简介中介绍了EXPLAIN语句,并举了一个慢查询例子:
- php 会话控制(禁用cookie后session为什么会失效?)
首先说明一点:session不一定必须依赖cookie,只是php默认客户端sessionid基于cookie方式保存. 到此,我想你也应该了解了php默认的session客户端保存方式是基于cook ...
- 002.SSH日常命令
一 远程登陆 ssh 用户名@远程主机ip:首次登陆需要下载对方公钥. 实例:ssh 192.168.10.129 二 远程复制 scp root@远程主机ip:[远程主机文件绝对路径] [需要保存的 ...
- .NET工作准备--03进阶知识
(已过时) 高级特性,多线程编程,单元测试; 第一部分 .net高级特性 1.委托:提供安全的函数回调机制; *基本原理:与C++中的函数指针相似;安全--它和其他所有.net成员一样是一种类型,任何 ...