在Debian上为ARM构建交叉编译器-出现“找不到crt0.o”错误

时间:2019-04-15 18:05:50

标签: android-ndk arm debian x86-64

尝试在Debian Linux(x86_64架构)上构建交叉编译器,以便我可以构建将在ARM架构(Android OS)上运行的代码。我需要ARM和C都需要FORTRAN,所以我不能仅仅依靠构建NDK工具链。使用GCC 8.3.0,我的配置是:

配置--target = arm-android-eabi --with-gnu-as --with-gnu-ld --enable-languages = c,fortran --with-mpfr =(/ path / to / mpfr) --with-gmp =(/ path / to / gmp)--with-mpc =(/ path / to / mpc)--disable-nls --disable-tls --disable-bootstrap --disable-libgomp-禁用共享--disable-libssp --disable-libquadmath --enable-threads --with-arch = armv5te --enable-target-optspace --with-sysroot = / home / me / NDK / android-ndk-r19c / platforms / android-28 / arch-arm --disable-libatomic

/ build-gcc / arm-android-eabi / libbacktrace中的

config.log显示:

ld:找不到crt0.o; C编译器无法创建可执行文件

我检查了NDK路径中的库(以sysroot表示),实际上,在那里找不到crt0.o。我相信我可以关闭使用--nostartfiles和--nostdlib的CFLAG值构建ARM可执行文件的尝试,但是不确定是否这是最好的处理方法。我需要为配置设置--build或--host标志吗?

TIA了解任何提示。

-史蒂夫

0 个答案:

没有答案