PERL 移植到ARM(mini2440)过程详解
作者:万升级
日期:2011-11-30
使用的环境:
Host: Linux version 2.6.31.5-127.fc12.i686
安装i386 perl 5.10.0
GCC: gcc version 4.4.2 (交叉编译环境由友善之臂提供的toolchain工具)
相关包下载
源码包: perl-5.10.
交叉编译包: perl-5.10.
/src/5.0/perl-5.10.
download2.pudn/downloads183/ebook/85856388perl-5.10.
编译过程
上传包:
把上面下载的两个包上传到编译环境的同一个目录中,如:/home/swan/perl5
如下:
解压包:
tar -zxvf perl-5.10.
解压包后,生成下面的一些文件
-rwxr-xr-x 1 swan epdev 808 2009-07-19 02:11 install
-rwxr--r-- 1 swan epdev 175088 2009-07-19 02:05 perl-5.10.0-cross.patch
-rwxr-xr-x 1 swan epdev 9813068 2011-11-30 15:55 perl-5.10.
-rwxr-xr-x 1 swan epdev 15595020 2011-11-30 15:55 perl-5.10.
猛士军车东风得利卡drwxr-xr-x 4 swan epdev 4096 2009-07-19 01:39 usr
修改安装配置文件install
vi install
修改前:
#!/bin/sh
#tar -xzvf $PKG/perl-5.10.
#patch -Np0 -i perl-5.10.0-cross.patch
sed -i 's/arm-unknown-linux-gnu-/arm-926ejs-linux-/' \
perl-5.10.0/Cross/Makefile
sed -i '/^PERL =/c\PERL = ../miniperl-cross' perl-5.10.0/utils/Makefile.SH
sed -i -e '/^generate_uudmap/c\generate_uudmap\\\$(EXE_EXT): generate_uudmap.c' -e '/$(CC).*generate_uudmap/c\ gcc \\\$(LDFLAGS) -o generate_uudmap generate_uudmap.c \\\$(libs)' perl-5.10.0/Makefile.SH
sed -i -e 's/\.\/perl installperl/\.\/miniperl-cross installperl/' \
-e '/$(MAKE) extras.install/d' \
-e '/\.\/perl installman/c\ @echo installman \$(DESTDIR)' \
perl-5.10.0/Makefile.SH
#mkdir -p $PKG/perl-5.10.0
奥拓汽车价格#rm -rf $PKG/perl-5.10.0/*
#cd perl-5.10.0/Cross
#make ARCH=arm CROSS_COMPILE=arm-926ejs-linux-
#make DESTDIR=$PKG/perl-5.10.0 install
修改后:
#!/bin/sh
广州本田2.0tar -xzvf $PKG/perl-5.10.
patch -Np0 -i perl-5.10.0-cross.patchvenz
sed -i 's/arm-unknown-linux-gnu-/arm-926ejs-linux-/' \ 奥迪s5双门
perl-5.10.0/Cross/Makefile
sed -i '/^PERL =/c\PERL = ../miniperl-cross' perl-5.10.0/utils/Makefile.SH
sed -i -e '/^generate_uudmap/c\generate_uudmap\\\$(EXE_EXT): generate_uudmap.c' -e '/$(CC).*generate_uudmap/c\ gcc \\\$(LDFLAGS) -o generate_uudmap generate_uudmap.c \\\$(libs)' perl-5.10.0/Makefile.SH
sed -i -e 's/\.\/perl installperl/\.\/miniperl-cross installperl/' \
-e '/$(MAKE) extras.install/d' \
-e '/\.\/perl installman/c\ @echo installman \$(DESTDIR)' \
perl-5.10.0/Makefile.SH
cd perl-5.10.0/Cross
make ARCH=arm CROSS_COMPILE=arm-linux-
make DESTDIR=$PKG/perl-5.10.0 install
红字体表示已修改过的,可以根据实际情况修改相应的路径和宏命令
执行脚本进行交叉编译
./install
在编译过程中如何出现一些错误,请检查install配置是否修改正确,特别是make ARCH=arm CROSS_COMPILE=arm-linux-这个需要重点注意,还有就是路径一定要正确.
发布评论