Chinaunix

标题: binutils configuration的一个问题 [打印本页]

作者: harry_he    时间: 2009-07-08 16:14
标题: binutils configuration的一个问题
对于交叉编译器,在做configuration的时候,一般需要指定build, host和target,下面是gcc安装手册中的说法:

所谓的 "build machine" 指的是你目前正在使用的机器;而"host machine" 则是你期望编译後所产生的编译器工作的机器;最後 "target machine" 则是你期望这个编译器(正在做编译的那个)产生的目的码的主机。(一般而言,前两者是相同的)。

configuration的help给出如下说明:
System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
  --target=TARGET   configure for building compilers for TARGET [HOST]

那么我在配置的时候,为了让编译器在powerpc机器上运行,给出如下命令:
../binutils-%{binutils_ver}/configure \
  --target=powerpc-none-linux-gnuspe \
  --build=i686-pc-linux-gnu \
  --host=powerpc-unknown-linux-gnu \
  --prefix=%{prefix} \
  --with-sysroot=%{prefix}/%{tc_target}/libc \
  --disable-nls

为什么编译过程会出错,错误是"make[2]: powerpc-unknown-linux-gnu-ar: Command not found",我的build machine是i686,应该使用i686-pc-linux-gnu的前缀阿!
作者: jzhang918    时间: 2009-07-08 19:55
标题: 回复 #1 harry_he 的帖子
你编译出来的binutils是运行在powerpc上的,这一点和一般的应用程序没有什么两样,所以你需要一个i686到powerpc的交叉编译器来编译你的binutils。
作者: harry_he    时间: 2009-07-09 11:15
谢谢,我理解错了




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2