это моя текущая проблема. Теперь я пытаюсь перенести проект на x86 на Android. Но этот проект нуждается в поддержке библиотеки pthread и не может пройти этап конфигурации.не может найти lpthread при перекрестном компиляции на руку
Команда:
./configure --build=${BUILD_SYS} --host=arm-eabi --prefix=${PREFIX} --disable-rpath --disable-libasprintf --disable-java --disable-native-java --disable-openmp --disable-curses
компилятора и компиляции флаги:
export CFLAGS="--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -I${NDK}/sources/android/support/include -pthread -fPIE -DANDROID -Wno-multichar"
export CXXFLAGS=${CFLAGS}
export CPPFLAGS="--sysroot=${SYSROOT} -I${SYSROOT}/usr/include -I${PREFIX}/include -I${NDK}/sources/android/support/include -pthread -DANDROID -DNO_XMALLOC -mandroid"
export LIBS="-lc -lgcc -lstdc++ -ldl"
export LDFLAGS="-Wl,-L${SYSROOT}/usr/lib -L${PREFIX}/lib -L${NDK_TOOLCHAIN}/lib"
Ошибка Msg:
checking for WIN32... no
checking for Mac... no
checking for Linux... compile in linux
checking for uuid_generate in -luuid... yes
found library uuid
checking for pthread_create in -lpthread... no
configure: error: *** Unable to find pthread library
Пожалуйста, помогите с этим: как прикрепить правильные флаги? OR Как обмануть autoconf? OR Как скомпилировать libpthread? И передать компиляцию в конце концов.
Какую специфическую кросс-цепочку (цель, версия и т. Д.) Вы используете? Эта цель «arm-eabi» звучит так, будто у вас есть цельная цепочка, ориентированная на цель, которая может быть построена без поддержки pthreads. Для Android вы, вероятно, захотите использовать инструментальную цепочку arm-linux-androideabi из NDK. – Notlikethat
@Notlikethat, Привет, я сменил хост на «arm-linux-androideabi», у него все еще есть такая проблема. ANDROID_TARGET = armv7-none-linux-androideabi TOOLCHAIN = arm-linux-androideabi – Jon