2013-04-29 14 views
7

sto ottenendo l'errore seguente: "Tipo 'size_t' non può essere risolto" il progetto Android NDK, ma ho già aggiunto i percorsi di libreria:Android NDK in Tipo di Eclipse size_t non può essere risolto

/Users/ademar/android-ndk-r8e/platforms/android-8/arch-arm/usr/include 
/Users/ademar/android-ndk-r8e/sources/cxx-stl/stlport/stlport 
/Users/ademar/android-ndk-r8e/sources/cxx-stl/gnu-libstdc++/4.7/include 

quindi non capisco perché questo errore.


codice dove ottengo l'errore:

static inline bool simplejson_wcsnlen(const wchar_t *s, size_t n) 

ho aggiunto ognuno di intestazioni descritto here ma ancora non funziona.


ho provato la seguente:

#include <string.h> 
#include <jni.h> 
#include <android/log.h> 
#include <iostream> 
#include <stdio.h> 

extern "C" { 
    JNIEXPORT jstring JNICALL Java_xxx_getStringFromJNI(JNIEnv* env, jobject thiz, jstring param) { 
     size_t x; 
     return env->NewStringUTF("test"); 
    } 
} 

e anche non funziona ...

+0

per favore, inserisci il codice incriminato. –

+0

@AnonMail aggiunto :) – ademar111190

+0

Penso che sia necessario includere l'intestazione che definisce size_t. e probabilmente dovresti usare std :: size_t. –

risposta

17

size_t è definito in stddef.h che è specifica del compilatore. Per aggiungerlo al percorso di inclusione è necessario aggiungere il/toolchain // prebuilt // lib/gcc /// includere nel percorso.

Ad esempio per la creazione di un'app per Android su macchine Windows a 64 bit tramite ndk, è necessario aggiungere <NDK-PATH>\toolchains\arm-linux-androideabi-4.8\prebuilt\windows-x86_64\lib\gcc\arm-linux-androideabi\4.8\include al percorso.

+1

Inclusione del preprocessore, Macro ecc. -> Voci (voci utente CDT) -> Aggiungi E verifica -> Contiene le intestazioni di sistema –

Problemi correlati