情况1
arm-linux-gcc -v hello.c ==>作品

案例2
arm-linux-gcc -v -L / home / peter / igep2015 / 09Buildroot / buildroot-2016.02-TRY5 / output / staging / usr / lib hello.c ==>不起作用
错误:ld.bfd:找不到/usr/lib/libc_nonshared.a
错误:ld.bfd:找不到/lib/ld-linux.so.3

案例3
arm-linux-gcc -v --sysroot = / home / peter / igep2015 / 09Buildroot / buildroot-2016.02-TRY5 / output / host / usr / armeb-buildroot-linux-gnueabi / sysroot / hello.c ==> WORKS
  但是说它忽略sysroot,因为它找不到/ usr / include,就像case#1一样。注意,buildroot-staging符号链接到buildroot-sysroot

各自的libc库位于:
/ usr / local / xtools / arm-unknown-linux-gnueabi / arm-unknown-linux-gnueabi / sysroot / usr / lib /:/ usr / local / xtools / arm-unknown-linux-gnueabi / arm-unknown-linux -gnueabi / sysroot / lib /

/home/peter/igep2015/09Buildroot/buildroot-2016.02-TRY5/output/host/usr/armeb-buildroot-linux-gnueabi/sysroot/usr/lib:/home/peter/igep2015/09Buildroot/buildroot-2016.02-TRY5/输出/主机/ usr / armeb-buildroot-linux-gnueabi / sysroot / lib /

/ arm-linux和Buildroot库似乎相同。该交叉工具用于构建Buildroot。

问题是:当我链接到Buildroot登台库时,为什么arm-linux-gcc失败。之所以出现此问题,是因为自动工具./configure失败,并带有-L到Buildroot。但是我需要-L来访问Buildroot中的libSDL2,libfreetype等,以便交叉编译SDL2_ttf。

注意:我正在使用(crosstool-NG 1.21.0)5.1.0。

最佳答案

只是不做您正在做的任何事情。 Buildroot交叉编译器配置为自动搜索$(STAGING_DIR)/ usr / lib中的库和$(STAGING_DIR)/ usr / include中的头。您描述的所有骇客都不需要。

关于linux - 交叉编译时无法通过./configure访问Buildroot临时库。测试编译失败。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36682302/

10-10 20:07