- 论坛徽章:
- 0
|
本帖最后由 iGoodmood 于 2011-08-23 16:37 编辑
我当前正在移植Perl到ARM平台,根据Perl自带的Cross目录下手README文件描述。
1、采用Cross目录下自带的文件,修改config文件中的架构信息为ARM,然后Makefile执行完make patch和make perl,发现出现此问题:miniperl不是一个可执行文件。
file miniperl表明miniperl是ARM架构文件,确实是无法执行。
2、Cross目录中自带了另一份脚本文件build-arm-n770-sh,该脚本先编译出本机的miniperl,后用编译出来的miniperl交叉编译ARM架构下的perl。
Makefile-cross-arm是运行Makefile-cross-SH生成的,输入文件为config-arm.sh,config-arm.sh为perl源码包中自带的文件,有进行少量修改。
问题描述:
1、每次调用该脚本的时候,运行到编译generate_uudmap的时候不会生成generate_uudmap.armo文件?
2、当脚本执行到编译DynaLoader.armo时,提示无法生成DynaLoader.armo文件?
3、我修改了源文件config-arm.sh中的部分关于交叉编译的设置,比如:CC,AR,LD和相应的LIB、INCLUDE目录等,有些选项不确定是用交叉编译的路径还是用本机的路径,有哪位大虾能否解读一下该文件如何设置?
4、另外我本机上不存在该目录:/usr/lib/perl5/5.10.0/armv4l-linux,不知道这对整编译过程有什么影响?
5、我不清楚在Cross目录下的文件generate_config_sh在整个编译过程中起到什么样的作用?
6、我在用Cross目录下的Makefile.SH.patch和installer.patch打补丁的时候总有好几个补丁无法打上,我找出问题是原Makefile.SH里面的语句描述与补丁中的不符,所以打补丁失败,问一下,这个情况是否有遇见过,之后是如何处理的?
7、我调通了单板上的SSH,试着用INSTALL里面描述的方法来编译Perl,但是碰到另一个问题。每次服务器将编译好的ARM程序通过SSH发到单板上去运行,然后再对运行结果进行判断,
但是取回的结果判断都是失败的,有没有朋友遇见过这种情况?
我现在用的perl源码版本为:perl-5.10.0.tar.gz2, 本机上的perl版本是:perl-5.10.0,
交叉编译工具链的gcc版本是:gcc-4.5.2, 本机的gcc版本是:gcc-4.3.4。
在线等,大虾们指点一下,谢谢! |
|