2012-01-19 25 views
9

Uso Android NDK con cygwin con Eclipse en Windows. En mi archivo MAKE quiero establecer la ruta de la biblioteca de preconstrucción usando la variable de entorno en Eclipse. Así que haga lo siguiente:Configuración de variables de entorno en Eclipse para usar con Android NDK

enter image description here

Y en makefile:

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

Pero consigo error:

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 

Intentamos definir variables en Makefile directamente, consiguió el mismo resultado .

Así que, obviamente, ese camino no es lo que yo quería. ¿Cómo configuro el camino correcto?

Respuesta

1

¿Por qué no solo especifica las rutas en el archivo make? (N.B Sólo se dio cuenta de que se trató.)

Using Cygwin with Android NDK

Este sitio parece indicar que el archivo make no funcionará correctamente dentro de Eclipse y se debe ejecutar a través de Windows Explorer. ¿Estás ejecutando esto dentro de Eclipse? Pruebe esto y vea si todavía tiene problemas.

0

Intenta jugar con la variable LOCAL_PATH. Como documentación (docs/ANDROID-MK.html en el paquete Android NDK, o here) afirma:

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

Además, NDK se insinúa 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.

Por lo tanto, me gustaría probar el siguiente:

LOCAL_PATH :=/

... o para restablecerla en absoluto:

LOCAL_PATH := 
0

Puede editar eclipse.ini archivo y añadirlo allí.

p. Ej. -DLOCAL_SRC_FILES=/home/user/.../

O declarar un path variable. Es una forma conveniente de compartir una ubicación común entre múltiples proyectos dentro de un espacio de trabajo.

Espero que te ayuden!

0

recientes NDK libera en Windows no necesitan cygwin. Peor aún, no reconocen la notación de cygdrive. Usted puede simplemente utilizar

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

corrección rutas absolutas para LOCAL_SRC_FILES no funcionan para ndk.r7, e incluso para r9 el androide-MK.doc no fomenta el uso de rutas absolutas allí.

Cuestiones relacionadas