Мне нужно создать статическую библиотеку из последней версии libpcap и «включить» ее в исходный код C для кросс-компиляции для архитектуры ARM-v7-a (Nexus One).
Я пытался в течение нескольких дней, надеюсь, кто-то может дать мне подсказку.
И я не могу использовать ни функции NDK, ни функции Java-обертки. Это должно быть так:
$ -o prog prog.c [-options] и позже я смогу протолкнуть исполняемый файл через adb.
Я пробовал с CodeSourcery и arm-linux-gnueabi, установленным через apt-get (у меня Kubuntu Linux), ничего не работало должным образом.
Максимум, чего я достиг, - это просто глупый файл helloworld через:
arm-linux-gnueabi-gcc -static -o prog prog.c
который выполнен под мой смартфон.
Есть ли у вас какие-либо сведения о том, что я могу получить более сложную программу, включая libpcap? Я думаю, что это должно иметь дело с файлами .a или .so в каталоге libpcap, но я действительно не понимаю... Заранее спасибо
РЕДАКТИРОВАНИЕ – РЕШЕНО. Как и сказал auselen, я пробовал использовать автономную цепочку инструментов NDK, и мне это удалось.
Вот что я сделал, на случай, если у кого-то возникнут такие же проблемы:
1) Загрузите Android SDK и NDK (последний в настоящее время имеет версию r8d)
2) Перейдите в папку NDK и введите
cd сборка/инструменты
make-standalone-toolchain.sh --platform=android-3 --install-dir=$HOME/new_toolchain --ndk-dir=ВАШ_NDK_PATH
cd $HOME/new_toolchain
(Я поместил свой файл helloworld.c в эту папку, но, конечно, вы можете добавить PATH в свой файл .bashrc для большей эффективности)
bin/arm-linux-androideabi-gcc helloworld.c -o helloworld
3) вставьте его в свое устройство через adb.
Теперь все работает :) еще раз спасибо