Cocos2d-x-2.1.4: ошибка: формат не строковый литерал и аргументы формата [-Werror = format-security]

Я работаю над игрой на cocos2d-x-2.1.4, однако, когда я пытаюсь создать ее на Android, она не удалась с ошибкой: формат не строковый литерал и аргументы формата [-Werror = format- безопасность] в файле CCCommon.cpp

Однако, когда я проверяю линию наступления, это совершенно нормально. Файл также строит отлично и всегда был прекрасен, когда я создаю для WIN32 и iOS с Visual Studio и XCode..

Журнал ошибок выглядит следующим образом:

C:/Development/External/cocos2d-2.1rc0-x-2.1.3/projects/Game_C2DX213/proj.android/../../..//cocos2dx/platform/android/CCCommon.cpp: In function 'void cocos2d::CCLog(char const*, ...)':
/cygdrive/c/eclipse/android-ndk-r9/build/core/build-binary.mk:348: recipe for target `obj/local/armeabi/objs/cocos2dx_static/platform/android/CCCommon.o' failed
C:/Development/External/cocos2d-2.1rc0-x-2.1.3/projects/Game_C2DX213/proj.android/../../..//cocos2dx/platform/android/CCCommon.cpp:44:72: error: format not a string literal and no format arguments [-Werror=format-security]
C:/Development/External/cocos2d-2.1rc0-x-2.1.3/projects/Game_C2DX213/proj.android/../../..//cocos2dx/platform/android/CCCommon.cpp: In function 'void cocos2d::CCLuaLog(char const*)':
make: Leaving directory `/cygdrive/c/Development/External/cocos2d-2.1rc0-x-2.1.3/projects/Game_C2DX213/proj.android'
C:/Development/External/cocos2d-2.1rc0-x-2.1.3/projects/Game_C2DX213/proj.android/../../..//cocos2dx/platform/android/CCCommon.cpp:54:77: error: format not a string literal and no format arguments [-Werror=format-security]
cc1plus.exe: some warnings being treated as errors

Ответ 1

Обратите внимание, что cocos2d-x-2.1.4 может быть несовместим с ndk-r9, вместо этого вы пытаетесь выполнить r8e?

Вы также можете поместить это в свой ApplicationMk, чтобы отключить обработку этих предупреждений как ошибок: APP_CFLAGS + = -Wno-error = format-security

В этой теме есть больше решений для одной и той же проблемы:

http://www.cocos2d-x.org/boards/6/topics/32437?r=33260#message-33260

ссылка: http://www.cocos2d-x.org/boards/6/topics/33525?r=33579

Ответ 2

вам нужно деферизировать в Android.mk после LOCAL_DISABLE_FORMAT_STRING_CHECKS: = true