在Linux上建立ARM交叉编译环境遇到问题

[复制链接]
3789|6
 楼主| 来与君 发表于 2008-5-14 11:17 | 显示全部楼层 |阅读模式
目&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;的:熟悉Linux,自己编译生成ARM交叉编译环境<br />宿主&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;机:Ubuntu&nbsp;8.04<br />gcc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;版本:gcc&nbsp;-dumpversion&nbsp;4.2.3<br />所使用傻瓜脚本:http://www.kegel.com/crosstool/crosstool-0.43.tar.gz中的demo-arm.sh<br />问&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;题:出现编译错误提示而终止,提示如下<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;echo&nbsp;Build&nbsp;binutils<br />Build&nbsp;binutils<br />+&nbsp;mkdir&nbsp;-p&nbsp;build-binutils<br />+&nbsp;cd&nbsp;build-binutils<br />+&nbsp;test&nbsp;!&nbsp;-f&nbsp;Makefile<br />+&nbsp;/home/somebody/Down/crosstool-0.43/build/arm-unknown-linux-gnu/gcc-4.1.0-glibc-2.3.2/binutils-2.16.1/configure&nbsp;--target=arm-unknown-linux-gnu&nbsp;--host=i686-host_pc-linux-gnulibc1&nbsp;--prefix=/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-unknown-linux-gnu&nbsp;--disable-nls&nbsp;--with-sysroot=/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-unknown-linux-gnu/arm-unknown-linux-gnu<br />creating&nbsp;cache&nbsp;./config.cache<br />checking&nbsp;host&nbsp;system&nbsp;type...&nbsp;i686-host_pc-linux-gnulibc1<br />checking&nbsp;target&nbsp;system&nbsp;type...&nbsp;arm-unknown-linux-gnu<br />checking&nbsp;build&nbsp;system&nbsp;type...&nbsp;i686-host_pc-linux-gnulibc1<br />checking&nbsp;for&nbsp;a&nbsp;BSD&nbsp;compatible&nbsp;install...&nbsp;/usr/bin/install&nbsp;-c<br />checking&nbsp;whether&nbsp;ln&nbsp;works...&nbsp;yes<br />checking&nbsp;whether&nbsp;ln&nbsp;-s&nbsp;works...&nbsp;yes<br />checking&nbsp;for&nbsp;gcc...&nbsp;gcc<br />checking&nbsp;whether&nbsp;the&nbsp;C&nbsp;compiler&nbsp;(gcc&nbsp;&nbsp;)&nbsp;works...&nbsp;no<br />configure:&nbsp;error:&nbsp;installation&nbsp;or&nbsp;configuration&nbsp;problem:&nbsp;C&nbsp;compiler&nbsp;cannot&nbsp;create&nbsp;executables.<br /><br />我认为是在编译binutils时碰到问题了。打开命令行相关的binutils-2.16.1目录下configure文件,和“checking&nbsp;whether&nbsp;the&nbsp;C&nbsp;compiler”相关的行可能是这两句<br />echo&nbsp;$ac_n&nbsp;&quot;checking&nbsp;whether&nbsp;the&nbsp;C&nbsp;compiler&nbsp;($CC&nbsp;$CFLAGS&nbsp;$LDFLAGS)&nbsp;works&quot;&quot;...&nbsp;$ac_c&quot;&nbsp;1&gt&6<br />echo&nbsp;&quot;configure:1922:&nbsp;checking&nbsp;whether&nbsp;the&nbsp;C&nbsp;compiler&nbsp;($CC&nbsp;$CFLAGS&nbsp;$LDFLAGS)&nbsp;works&quot;&nbsp;&gt&5<br /><br />疑&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;问:1、gcc未找到?但是在命令行已经能够单独运行gcc了。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2、$CFLAGS和$LDFLAGS这两个变量的问题?不知道。<br /><br />请大伙指教,我这里先行谢过。
brandnew 发表于 2008-5-14 12:19 | 显示全部楼层

。。。

你周围难道就没搞这个的人吗?<br /><br />
 楼主| 来与君 发表于 2008-5-14 12:29 | 显示全部楼层

呵呵,楼上说中了

不行的话,我就下现成的……
阿南 发表于 2008-5-14 12:33 | 显示全部楼层

还是用现成的吧

  
simon21ic 发表于 2008-5-14 14:47 | 显示全部楼层

确认一下build-essential装了没

  
 楼主| 来与君 发表于 2008-5-14 18:36 | 显示全部楼层

谢谢阿南,谢谢Simon

正如Simon所讲,安装了build-essential之后,这道坎跨过去了,现在正在热力编译中……<br /><br />还请Simon多多指教!
 楼主| 来与君 发表于 2008-5-14 18:46 | 显示全部楼层

总之,两条腿走路吧

+&nbsp;echo&nbsp;crosstool:&nbsp;binutils&nbsp;built&nbsp;ok<br />crosstool:&nbsp;binutils&nbsp;built&nbsp;ok<br />+&nbsp;echo&nbsp;Install&nbsp;glibc&nbsp;headers&nbsp;needed&nbsp;to&nbsp;build&nbsp;bootstrap&nbsp;compiler&nbsp;--&nbsp;but&nbsp;only&nbsp;if&nbsp;gcc-3.x<br />Install&nbsp;glibc&nbsp;headers&nbsp;needed&nbsp;to&nbsp;build&nbsp;bootstrap&nbsp;compiler&nbsp;--&nbsp;but&nbsp;only&nbsp;if&nbsp;gcc-3.x<br />+&nbsp;grep&nbsp;-q&nbsp;gcc-[34]&nbsp;/home/Somebody/Down/crosstool-0.43/build/arm-unknown-linux-gnu/gcc-4.1.0-glibc-2.3.2/gcc-3.3.6/ChangeLog<br />+&nbsp;test&nbsp;!&nbsp;-f&nbsp;/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-unknown-linux-gnu/arm-unknown-linux-gnu/include/features.h<br />+&nbsp;mkdir&nbsp;-p&nbsp;build-glibc-headers<br />+&nbsp;cd&nbsp;build-glibc-headers<br />+&nbsp;test&nbsp;!&nbsp;-f&nbsp;Makefile<br />+&nbsp;libc_cv_ppc_machine=yes&nbsp;CC=gcc&nbsp;/home/Somebody/Down/crosstool-0.43/build/arm-unknown-linux-gnu/gcc-4.1.0-glibc-2.3.2/glibc-2.3.2/configure&nbsp;--prefix=/usr&nbsp;--build=i686-pc-linux-gnu&nbsp;--host=arm-unknown-linux-gnu&nbsp;--without-cvs&nbsp;--disable-sanity-checks&nbsp;--with-headers=/opt/crosstool/gcc-4.1.0-glibc-2.3.2/arm-unknown-linux-gnu/arm-unknown-linux-gnu/include&nbsp;--enable-hacker-mode<br />checking&nbsp;build&nbsp;system&nbsp;type...&nbsp;i686-pc-linux-gnu<br />checking&nbsp;host&nbsp;system&nbsp;type...&nbsp;arm-unknown-linux-gnu<br />checking&nbsp;sysdep&nbsp;dirs...&nbsp;sysdeps/arm/elf&nbsp;sysdeps/unix/sysv/linux/arm&nbsp;sysdeps/unix/sysv/linux&nbsp;sysdeps/gnu&nbsp;sysdeps/unix/common&nbsp;sysdeps/unix/mman&nbsp;sysdeps/unix/inet&nbsp;sysdeps/unix/sysv&nbsp;sysdeps/unix/arm&nbsp;sysdeps/unix&nbsp;sysdeps/posix&nbsp;sysdeps/arm/fpu&nbsp;sysdeps/arm&nbsp;sysdeps/wordsize-32&nbsp;sysdeps/ieee754/flt-32&nbsp;sysdeps/ieee754/dbl-64&nbsp;sysdeps/ieee754&nbsp;sysdeps/generic/elf&nbsp;sysdeps/generic<br />checking&nbsp;for&nbsp;a&nbsp;BSD-compatible&nbsp;install...&nbsp;/usr/bin/install&nbsp;-c<br />checking&nbsp;whether&nbsp;ln&nbsp;-s&nbsp;works...&nbsp;yes<br />checking&nbsp;for&nbsp;pwd...&nbsp;/bin/pwd<br />checking&nbsp;for&nbsp;arm-unknown-linux-gnu-gcc...&nbsp;gcc<br />checking&nbsp;version&nbsp;of&nbsp;gcc...&nbsp;4.2.3,&nbsp;bad<br />checking&nbsp;for&nbsp;gnumake...&nbsp;no<br />checking&nbsp;for&nbsp;gmake...&nbsp;no<br />checking&nbsp;for&nbsp;make...&nbsp;make<br />checking&nbsp;version&nbsp;of&nbsp;make...&nbsp;3.81,&nbsp;ok<br />configure:&nbsp;error:<br />***&nbsp;These&nbsp;critical&nbsp;programs&nbsp;are&nbsp;missing&nbsp;or&nbsp;too&nbsp;old:&nbsp;gcc<br />***&nbsp;Check&nbsp;the&nbsp;INSTALL&nbsp;file&nbsp;for&nbsp;required&nbsp;versions.<br /><br />看来不是嫌gcc太年轻,就是嫌make太老了。<br />稍后再查……
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

367

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部