Android NDK'ye taşınması gereken karmaşık bir açık kaynak kitaplığına sahibim. İlk olarak, (./Configure) yapılandırmam gerekiyor. Anlıyorum: /home/user/android-ndk/build/prebuilt/ linux-x86/arm-eabi-4.4.0/bin/arm-eabi-gcc ile çapraz derleme yapmak zorundayım. Bu yardımcı program bir kütüphaneyi doğru şekilde yapılandırır mı? evet ise, o zaman soru 2:Arm-eabi-gcc ve çapraz derleme hakkında
1.Bu tür bir kütüphaneyi derlemeye çalışıyorum: libao. Bu komutları kullanın:
PREBUILT =/home/user/android-ndk/build/prebuilt/linux-x86/arm-
eabi-4.4.0
PLATFORM =/home/user/android-ndk/build/platforms/android-3/arch-arm
INSTALL =/home/user/sox-14.3.2/com
export CC = "/ home/user/android-ndk/build/prebuilt/linux-x86/arm-
eabi-4.4.0/bin/arm-eabi-gcc"
export CFLAGS = "-fPIC-DANDROID"
export LDFLAGS = "-Wl,-T, $ PREBUILT/arm-eabi/lib/ldscripts/
armelf.x-Wl,-rpath-link = $ PLATFORM/usr/lib-L $ PLATFORM/usr/
lib-nostdlib $ PREBUILT/lib/gcc/arm-eabi/4.4.0/crtbegin.o $ PREBUILT/
lib/gcc/arm-eabi/4.4.0/crtend.o-lc-lm-ldl "
./Configure - host = arm - with-gnu-ld - enable-shared \
toplanması sonunda aşağıdaki alırsınız: yapılandırmak: hatası: Bu platformda bulunamadı 16 bit türü!
Bu ne anlama geliyor? Kitaplığı nasıl düzeltebilir ve yapılandırabilirsiniz? Belki kütüphaneyi nasıl yapılandırabilirim?
çalışır, ancak ben ilk kütüphaneyi yapılandırmanız gerekebilir bilgileri içerir! Nasıl yapılır? O zamandan beri iyiyim. h dosyaları! – Kyborg2011
Teşekkür ederiz! İşe yarıyor! Muhtemelen kütüphane podulyuchil'in LDFLAGS'ında gerekli değildir. Ne düşünüyorsun: Kütüphane skonfigurirovanye bu yöntem tüm Android telefonlarda ya da sadece ARM'de teoride çalışacak mı? – Kyborg2011
Şu anda tüm Android telefonlarda ARM işlemci var. Ancak bu CPU'lar aynı değildir, bazıları örneğin kayan nokta birimi içermez. Lütfen http://source-android.frandroid.com/ndk/docs/APPLICATION-MK.html - APP_ABI ve http://source-android.frandroid.com/ndk/docs/CPU-ARCH-ABIS.html adreslerini okuyun. CPU'ların desteklenen özelliklerini nasıl seçerim. Muhtemelen tüm telefonlar için çalışması gereken armutu seçtiniz, ama aynı zamanda kayan nokta birimi ile en yeni CPU'yu daha iyi desteklemek için armeabi-v7a ile derlenmiş kütüphane sağlamak da iyi olacaktır. – Zuljin