2011-01-06 14 views
5

Sto provando a compilare un programma nativo per Android.NDK non trova le librerie C++ standard

Ma quando si esegue il comando ndk-build ho ottenuto il seguente risultato.

/home/marcos/dev/workspace/rmsdk.native.wraper/jni/include-all/uft_alloc.h:26:21: error: stdexcept: No such file or directory 
/home/marcos/dev/workspace/rmsdk.native.wraper/jni/include-all/uft_alloc.h:27:18: error: limits: No such file or directory 

stdexcept e limiti fanno parte della versione di base di C++ lib.

Questo è il mio Android.mk

LOCAL_PATH := $(call my-dir) 
MY_PATH := $(LOCAL_PATH) 
include $(call all-subdir-makefiles) 
LOCAL_PATH := $(MY_PATH) 
include $(CLEAR_VARS) 

LOCAL_LDLIBS := -llog 
LOCAL_MODULE := rmsdk 
LOCAL_SRC_FILES := curlnetprovider.cpp RMServices.cpp 
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include-all 
LOCAL_STATIC_LIBRARIES := adept cryptopenssl curl dp expat fonts hobbes jpeg mschema png t3 xml zlib 

include $(BUILD_SHARED_LIBRARY) 

dovrei dire esplicitamente che si tratta di una fonte di C++?

risposta

6

In Application.mk (se non esiste, crearlo) aggiungere la seguente riga:

APP_STL: = stlport_static

Ora sarà in grado di utilizzare la STL.

+0

Grazie, questo funziona. –

0

In realtà, NDK non fornisce tutta la libreria C++ standard.

Quindi, inizio a utilizzare NDK modificato da crystax.

Questo funziona ora.

Problemi correlati