2017-01-31 1 views
0

Ich arbeite an einigen Native Android-Projekt mit CMake. Wo ich ein Problem habe, das oben genannten Fehler angibt.Android nativer Build Fehler möglicherweise unsicher [-Werror, -Wformat-Sicherheit]

Ich habe eine Methode für die Protokollierung von c-Dateien erstellt.

void log_android(int prio, const char *fmt, ...) { 
    if (prio >= loglevel) { 
     char line[1024]; 
     va_list argptr; 
     va_start(argptr, fmt); 
     vsprintf(line, fmt, argptr); 
     __android_log_print(prio, TAG, line); 
     va_end(argptr); 
    } 
} 

Während dieser Zusammenstellung ich Problem immer String is not String literal auf __android_log_print(prio, TAG, line); in der Nähe von Wort line.

Er sagt, seine potentially insecure [-Werror,-Wformat-security] Nach einigen R & D tun fand ich, dass ich bestimmte CPPFLAGS innerhalb CMAKE APP_CFLAGS += -Wno-error=format-security verwenden müssen. Aber ich bin mir nicht sicher, wo ich diesen Code in meinem CMakeLists.txt platzieren sollte.

Ich habe versucht, diese Methoden innerhalb CMakeLists.txt

set(compiler_c_flags "-Wno-error=format-security") 
set(compiler_cpp_flags "-Wno-error=format-security") 

Aber kein Erfolg bitte helfen zu verwenden.

Antwort

0

OK, also habe ich das Problem selbst gelöst. Ich war mit

set(compiler_c_flags "-Wno-error=format-security") 

statt

set(CMAKE_C_FLAGS "-Wno-error=format-security") 
Verwandte Themen