Android — Configure не может найти работающий компилятор

Я пытаюсь запустить configure, говоря ему использовать кросс-компилятор (тот, который предоставляется Android NDK), но он не может его найти. Я сделал следующее (обратите внимание, рут Android NDK находится в /prod/ndk/):

(внутри папки, которую я хочу скомпилировать, которая находится в /prod/workspace/jni/gmp/):

   ./configure \
--host=arm-linux-androideabi \
CC=arm-linux-androideabi-gcc \
LD=arm-linux-androideabi-ld \
CPPFLAGS="-I/prod/ndk/platforms/android-8/usr/include/" \
CFLAGS="-nostdlib" \
LDFLAGS="-Wl,-rpath-link=/prod/ndk/platforms/android-8/arch-arm/usr/lib/
-L/prod/ndk/platforms/android-8/arch-arm/usr/lib" \
LIBS="-lc"

Но я получаю следующую ошибку:

   checking build system type... x86_64-unknown-linux-gnu
checking host system type... arm-unknown-linux-androideabi
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-linux-androideabi-strip... arm-linux-androideabi-strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking ABI=standard
checking whether arm-linux-androideabi-gcc is gcc... yes
checking compiler arm-linux-androideabi-gcc -nostdlib
-I/prod/ndk/platforms/android-8/usr/include/... no, double -> ulong conversion
configure: error: could not find a working compiler, see config.log for
details

Любая помощь? PS: я включил /prod/ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/ в моем PATH переменная.

0

Решение

Я не уверен в этом, но я бы сказал, что эта строка:

checking ABI=standard

вероятно означает, что configure не пытается собрать для архитектуры ARM, но для рабочего стола … поэтому, когда вы пытаетесь запустить его, он пытается собрать для рабочего стола с помощью компилятора Android и находит, что этот компилятор не работает.

Попробуйте добавить:

--host=arm-linux-androideabi

Посмотрим, работает ли это.

0

Другие решения

Вы, наверное, уже поняли это, но на случай, если вы … или кто-то еще (например, я) … столкнетесь с этим вопросом, есть несколько вещей, которые вы должны посмотреть и / или сделать

  1. Используйте make-standalone-toolchain.sh в каталоге $ NDKROOT / build / tools, чтобы создать автономный набор инструментов, предназначенный для платформы, для которой вы хотите разработать. Это проще, чем использовать готовые наборы инструментов в NDK, и это рекомендуемый способ использования наборов инструментов.
  2. Проверьте config.log. Он скажет вам точно, где в конфигурации произошла ошибка. Если вы посмотрите на это место, вы лучше поймете: а) что вызвало ошибку и б) что можно исправить.
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector