Попытка построить кросс-компилятор в Debian Linux (x86_64 arch), чтобы я мог создать код, который будет работать на ARM arch (Android OS). Мне нужен FORTRAN для ARM, а также C, поэтому я не могу зависеть только от сборки цепочки инструментов 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 / платформы / Android-28 / Arch-Arm --Disable-Libatomic
config.log в / build-gcc / arm-android-eabi / libbacktrace показывает:
ld: невозможно найти crt0.o;
Компилятор C не может создавать исполняемые файлы
Я проверил libs по пути NDK (обозначается как sysroot), и действительно, crt0.o там не найден. Я полагаю, что могу отключить попытку сборки исполняемых файлов ARM со значениями CFLAG --nostartfiles и --nostdlib, но не уверен, что это лучший способ продолжить. Нужно ли устанавливать флаги --build или --host для конфигурации?
TIA для любых советов.
- Стив