2012-01-19 24 views
9

Uso Android NDK con cygwin con Eclipse su Windows. Nel mio makefile voglio impostare il percorso della libreria di pre-build usando la variabile di ambiente in eclissi. Così faccio la seguente:Impostazione delle variabili di ambiente in Eclipse da utilizzare con Android NDK

enter image description here

E nel makefile:

LOCAL_SRC_FILES = $(QCAR_SDK_ROOT)build/lib/$(TARGET_ARCH_ABI)/libQCAR.so 
LOCAL_EXPORT_C_INCLUDES := $(QCAR_SDK_ROOT)build/include 

Ma ottengo l'errore:

Android NDK: ERROR:jni/Android.mk:QCAR-prebuilt: LOCAL_SRC_FILES points to a missing file  
/cygdrive/d/Development/Android/android-ndk-r7/build/core/prebuilt-library.mk:43: *** Android NDK: Aborting . Stop. 
make: *** [all] Error 2 
Android NDK: Check that jni//cygdrive/D/Development/Android/qcar-android-1-5-4-beta1/build/lib/armeabi/libQCAR.so exists or that its path is correct 

provato definire variabile makefile direttamente, ha ottenuto lo stesso risultato .

Quindi, ovviamente, quel percorso non è quello che volevo. Come imposto il percorso corretto?

risposta

1

Perché non specificare solo i percorsi nel file make? (NB appena notato che si è tentato.)

Using Cygwin with Android NDK

Questo sito sembra indicare che il file make non funzionerà correttamente all'interno di Eclipse e si dovrebbe eseguire in via di Windows Explorer. Stai eseguendo questo all'interno di Eclipse? Prova questo e vedi se hai ancora i problemi.

0

Provare a giocare con variabile LOCAL_PATH. Come documentazione (docs/ANDROID-MK.html nel pacchetto NDK Android, o here) afferma:

LOCAL_SRC_FILES

This is a list of source files that will be built for your module. Only list the files that will be passed to a compiler, since the build system automatically computes dependencies for you.

Note that source files names are all relative to LOCAL_PATH and you can use path components

Inoltre, NDK si accenna a Check that jni//cygdrive/D/Development/Android/qcar-android-1-5-4-beta1/build/lib/armeabi/libQCAR.so exists or that its path is correct.

Così, vorrei provare il seguente:

LOCAL_PATH :=/

... o per ripristinare affatto:

LOCAL_PATH := 
0

È possibile modificare eclipse.ini di file e aggiungerlo lì.

ad es. -DLOCAL_SRC_FILES=/home/user/.../

Oppure dichiarare path variable. È un modo conveniente di condividere una posizione comune tra più progetti all'interno di uno spazio di lavoro.

Spero che ti aiuti!

0

recente NDK rilascia su Windows non hanno bisogno di Cygwin. Peggio ancora, non riconoscono la notazione cygdrive. Si può semplicemente utilizzare

QCAR_SDK_ROOT = D:/Development/Android/qcar-android-1-5-4-beta1 

correzione percorsi assoluti per LOCAL_SRC_FILES non funzionano per ndk.r7, e anche per la R9 ANDROID-MK.doc non incoraggia usando percorsi assoluti lì.

Problemi correlati