2017-01-06 14 views
0

Чтобы напечатать uint64_t значения, я использую макрос PRIx64. Это работает на всех платформах, которые я пробовал (. IOS, Windows, Linux, arm64 Android)Формат макроса PRIx64 не определяется при компиляции для armeabi-v7a

Но на 32-битном ARM Android, макро, кажется, не будут доступны:

При компиляции:

LOGI("Cannot find %" PRIx64 " in wld.", item);

я получаю:

actors_pathing.cpp:234:25: error: expected ')' LOGI("Cannot find %" PRIx64 " in wld.", item); ^

arm64-V8A ш орки прекрасные, но armeabi-v7a нет. Несомненно, 32-битный код руки должен иметь возможность распечатывать 64-битные целые числа?

Использование: НДК r13b (последний)

В Application.mk: APP_ABI := armeabi-v7a

ответ

1

макрос должен быть определен при использовании формата PRIx64:

-D__STDC_FORMAT_MACROS