2012-02-06 21 views
5

gelen kütüphane paylaşılan referanslanmasına Bir C/C++ projesi ve Android Native projesinde bu .so dosyalarını kullanmak istiyorum. Bu kütüphane dosyalarını bir projeden diğerine kopyalamak ve yapıştırmak istemiyorum.Android yerel proje ben 2 proje var C++ kütüphanesi projesi

Her şeyden önce, C++ kütüphanesi projesine bazı referansları kullanarak bu .so dosyalarını kendi yerel Android projemden kullanmak mümkün müdür?

C++ kütüphanesi projesinden .so dosyalarını otomatik olarak Android yerel projesine kopyalamanın bir yolu bulmak daha kolay olur mu?

cevap

1

Önce lib'lerinizi ARM için yeniden derlemeniz gerekir. Bunun için ndk'in "bağımsız takım zinciri" işlevini kullanabilirsiniz. Ndk dir'de (docs/STANDALONE-TOOLCHAIN.html) daha fazlasını açıklayan bir doktor var. Sonra istediğiniz yere öylesine kopyalayıp Android.mk onu başvurabilir

NDK_PATH=/android-ndk-r7 
NDK_GCC=${NDK_PATH}/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc 

export CC="${NDK_GCC} --sysroot=${NDK_PATH}/platforms/android-8/arch-arm" 
export CFLAGS='-mthumb' 
export LDFLAGS='-Wl,--fix-cortex-a8' 
./configure --host=arm-eabi 
make 

: Ben bağımsız araç zinciri şöyle kullanarak expat derlemek için bir bash dosyası çırpılmış bu yüzden bir projede libexpat kullanmak için gerekli

Ben expat inşa ve çok çıkan

kopyalama konusunda endişelenmenize gerek yoktu bu yüzden statik bağlantı kurdu
LOCAL_LDLIBS := \ 
-Lvendor/expat/sdk/lib/android \ 
-lexpat 

Not

İlgili konular