Как скомпилировать статическое связанное приложение, используя набор инструментов для кросс-компиляции Android? - PullRequest
0 голосов
/ 10 января 2012

Я пытаюсь скомпилировать сайт fbgrab fbgrab для устройств arm.

Мне удалось построить его с помощью этой команды

arm-linux-androideabi-gcc --sysroot=$NDK_ROOT/platforms/android-8/arch-arm/ -lz  -lm  -I../zlib -I../lpng  -W -Wall   -o fbgrab fbgrab.c ../zlib/libz.a ../lpng/libpng.a

но он динамически связан, и я не знаю, как установить общие библиотеки на устройство

localhost:fbgrab-1.0 anatoly$ file fbgrab
fbgrab: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), not stripped

Так что мне нужно собрать его со статическими связанными библиотеками когда я пытаюсь использовать опцию -static, компиляция завершается с этим сообщением ld: cannot find -lz, хотя разделяемые библиотеки расположены в указанных каталогах

в чем здесь проблема? Как построить статический связанный двоичный файл? или как я могу установить общие библиотеки на устройство?

1 Ответ

0 голосов
/ 12 января 2012

Вы можете легко установить разделяемые библиотеки, включив их источники в ваш проект и создав их с помощью инструментов NDK, или включив предварительно собранную разделяемую библиотеку.Также можно использовать NDK для статического связывания.Посмотрите на эти документы в вашем каталоге NDK: / андроид-NDK-r7 / Docs / PREBUILTS.html / андроид-NDK-R7 / Docs / ANDROID-MK.html Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...