Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: necessitas, как прилинковать либу
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt инструментарий
efg
имеется работающий (на десктопе) проект, в котором используется библиотека физического движка (box2d)
necessitas установлен и настроен под debian x86_64
движок собран, всё замечательно
но вот если изменить цель на android, то либа вдруг отчего-то отказывается прилинковываться:
/home/efg/necessitas/Android/Qt/480/armeabi/lib/libBox2D.a:-1: error: could not read symbols: File format not recognized

как, зачем, почему? что делать?
устанавливать <array name="bundled_libs"> в android/res/values/libs.xml смысла нет, так как код вообще не компилица из-за ну вы поняли
efg
подсовываю .so - аналогично:
Running build steps for project jet_pig_adventures...
Configuration unchanged, skipping qmake step.
Starting: "/usr/bin/make" -w
make: Вход в каталог `/home/efg/qt_projects/jet_pig_adventures-build--Necessitas_Qt_4_8_0_for_Android_armv5_Debug'
/home/efg/necessitas/android-ndk-r6b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-g++ --sysroot=/home/efg/necessitas/android-ndk-r6b/platforms/android-5/arch-arm/ -L/home/efg/necessitas/android-ndk-r6b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3 -Wl,-rpath-link=/home/efg/necessitas/android-ndk-r6b/platforms/android-5/arch-arm//usr/lib -Wl,--no-undefined -Wl,-z,noexecstack -shared -Wl,-soname,libjet_pig_adventures.so -Wl,-rpath=/tmp/necessitas/unstable/Android/Qt/480/build-armeabi/install/lib -o libjet_pig_adventures.so main.o game.o contactFilter.o gameView.o qtmain_android.o moc_game.o moc_gameView.o qrc_resources.o    -L/home/efg/necessitas/android-ndk-r6b/sources/cxx-stl/gnu-libstdc++/libs/armeabi -L/home/efg/necessitas/android-ndk-r6b/platforms/android-5/arch-arm//usr/lib -L/home/efg/necessitas/Android/Qt/480/armeabi/lib -l:libBox2D.so.2.1.0 -lQtSvg -L/home/efg/necessitas/Android/Qt/480/armeabi/lib -L/tmp/necessitas/android-ndk-r6b/sources/cxx-stl/gnu-libstdc++/libs/armeabi -L/tmp/necessitas/android-ndk-r6b/platforms/android-5/arch-arm//usr/lib -lQtXml -lQtGui -lQtCore -lstdc++ -lsupc++ -llog -lz -lm -ldl -lc -lgcc
/home/efg/necessitas/Android/Qt/480/armeabi/lib/libBox2D.so.2.1.0: file not recognized: File format not recognized
make: Выход из каталога `/home/efg/qt_projects/jet_pig_adventures-build--Necessitas_Qt_4_8_0_for_Android_armv5_Debug'
collect2: ld returned 1 exit status
make: *** [libjet_pig_adventures.so] Ошибка 1
The process "/usr/bin/make" exited with code 2.
Error while building project jet_pig_adventures (target: Android)
When executing build step 'Make'
efg
понятно, что причина в самом компиляторе arm-linux-androideabi-g++, непонятно, что делать
есть вот обсуждения
http://groups.google.com/group/android-qt/...e6b6a6d4cfb2a62
http://sourceforge.net/p/necessitas/tickets/106/
но там о другом, у чуваков либа не добавлялась в пакет
efg
на лоре помогли
Цитата
/home/efg/necessitas/Android/Qt/480/armeabi/lib/libBox2D.a:-1: error: could not read symbols: File format not recognized

Может библиотека собрана для x86-64?
YesSSS *** (17.01.2012 20:31:20)


Цитата
Можно попробовать засунуть его дерево исходников в проект.
PolarFox **** (17.01.2012 22:35:17)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.