尝试为 ecos bintuils 运行 ./configure 和 ./make -

尝试为 ecos bintuils 运行 ./configure 和 ./make -

我要从构建与 eCos 一起使用的工具链 我现在正在配置和构建 binutils 的工具:

./configure --target=arm-elf --prefix=../gnutools -v &> configure.out2
make -w all install &> make.out

但是当我运行 make 时,出现此错误:

libtool: link: only absolute run-paths are allowed

看起来 libtool 正在尝试使用不存在的 -rpath 构建 /bfd/libbfd.a 库:

libtool --mode=link gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2  -o libopcodes.la -rpath ../gnutools/x86_64-unknown-linux-gnu/arm-elf/lib -release 2.13.1  dis-buf.lo disassemble.lo arm-dis.lo  

为了解决这个问题,我设置并将 var LIBDIR 环境设置为 lib 目录,我假设它正在寻找:

LIBDIR=/home/dan/dev/arm/crosstool/gcc-4.0.1-glibc-2.3.5/arm-linux/arm-linux/lib

并运行一个 bash 脚本,该脚本使用上述参数调用 libtool,但 -rpath 设置为 $LIBDIR,并且它使 libbfd.a 库正常运行。然后我运行 make,它开始尝试为 opcodes 目录创建库,但出现了同样的问题。如何在 configure 脚本中设置 -rpath?或者甚至通过编辑 Makefile 来设置它?

答案1

在您的 ./configure 中,您已经得到了它--prefix=../gnutools,它应该是--prefix=/gnutools。它需要一个绝对路径,而不是 ..relative。

相关内容