移植前准备工作:
1,Linux操作系统(ubuntu 12.04)
2,Linux操作系统,有交叉编译器(此编译器需与你的嵌入式设备配套),求毕业的交叉编译器是:arm-xilinx-linux-gnueabi-gcc
3,python源码包,去官网ftp下吧
OK,开始啦!求毕业以 Python-2.7.3为例
1 /home/liu# tar jxvf
Python-2.7.3.tar.bz2
2 /home/liu# cd
Python-2.7.3/
运行配置文件,生成必要的Makefile等文件
3 /home/liu/Python-2.7.3#
./configure
编译PC版 python Parser/pgen
4 /home/liu/Python-2.7.3# make python
Parser/pgen
将生成的PC版移动至hostpython
5 /home/liu/Python-2.7.3# mv python
hostpython
将生成的PC版解释器移动至Parser/hostpgen
6 /home/liu/Python-2.7.3# mv
Parser/pgen Parser/hostpgen
清除不必要的文件
7 make distclean
以下部分涉及到交叉编译Python
先将补丁打上:
8 /home/liu/Python-2.7.3# patch -p1
设置必要的环境变量
设置交叉编译器
9 /home/liu/Python-2.7.3#
CC=arm-xilinx-linux-gnueabi-gcc
设置C++交叉编译器
10 /home/liu/Python-2.7.3#
CXX=arm-xilinx-linux-gnueabi-g++
设置AR
11 /home/liu/Python-2.7.3#
AR=arm-xilinx-linux-gnueabi-ar
设置RANLIB
12 /home/liu/Python-2.7.3#
RANLIB=arm-xilinx-linux-gnueabi-ranlib
生成符合交叉编译器的Makefile
13 /home/liu/Python-2.7.3# ./configure
--host=arm-xilinx-linux-gnueabi --prefix=/python
make
14 /home/liu/Python-2.7.3#
make HOSTPYTHON=./hostpython
HOSTPGEN=./Parser/hostpgen BLDSHARED="arm-xilinx-linux-gnueabi-gcc
-shared" CROSS_COMPILE=arm-xilinx-linux-gnueabi-
CROSS_COMPILE_TARGET=yes
make install安装到指定文件
15 /home/liu/Python-2.7.3# make install
HOSTPYTHON=./hostpython BLDSHARED="arm-xilinx-linux-gnueabi-gcc
-shared" CROSS_COMPILE=arm-xilinx-linux-gnueabi-
CROSS_COMPILE_TARGET=yes
prefix=/home/liu/Python-2.7.3/_install
此时,可以在ARM上执行的文件会生成在/home/liu/Python-2.7.3/_install中
另外:以上部分,是借鉴国外的两位朋友做的1:http://randomsplat.com/id5-cross-compiling-python-for-embedded-linux.html
2:http://www.cnx-software.com/2011/02/04/cross-compiling-python-for-mips-and-arm-platforms/
原文:http://www.cnblogs.com/hit-python/p/4079506.html