我试图为STM32F板交叉编译libsndfile。我发现了this问题,但我在配置步骤中遇到了问题。
我已经使用apt install gcc-arm-none-eabi
安装了交叉编译工具。
我跑./autogen.sh
然后export CC=arm-none-eabi-gcc
和./configure --host=arm-none-eabi
。我也尝试过上面提到的SO问题中的其他主机选项。
但是配置返回:
checking for arm-none-eabi-gcc... arm-none-eabi-gcc
checking whether the C compiler works... no
configure: error: in `/home/arun/build/libsndfile':
configure: error: C compiler cannot create executables
See `config.log' for more details
config.log显示:
configure:4135: arm-none-eabi-gcc conftest.c >&5
/usr/lib/gcc/arm-none-eabi/4.9.3/../../../arm-none-eabi/lib/libc.a(lib_a-exit.o): In function `exit':
/build/newlib-5zwpxE/newlib-2.2.0+git20150830.5a3d536/build/arm-none-eabi/newlib/libc/stdlib/../../../../../newlib/libc/stdlib/exit.c:70:
undefined reference to `_exit'
collect2: error: ld returned 1 exit status
这导致another SO问题,所以我手动编辑了配置并将--specs=nosys.specs
添加到ac_compile和ac_link变量。但我仍然看到错误。
libsndfile suggested的作者设置CFLAGS和LDFLAGS,但我不确定将它们设置为什么。
目前还不确定还有什么可以尝试的。有人能指出我正确的方向吗?
由于
答案 0 :(得分:0)
在运行export LDFLAGS="specs=nosys.specs"
./configure --host=arm-none-eabi
解决了配置问题