gpt4 book ai didi

android - Android.mk 中的预处理器宏被忽略,但在 Application.mk 中有效

转载 作者:太空宇宙 更新时间:2023-11-03 11:50:17 29 4
gpt4 key购买 nike

我使用 jni 创建了一个 Android 项目。现在我想使用预处理器宏来区分精简版和完整版。它应该看起来像这样:

#ifdef LITE
auto label = LabelTTF::create("Hello Cocos2dx Lite", "Arial", 24);
#else
auto label = LabelTTF::create("Hello Cocos2dx Full", "Arial", 24);
#endif

为此,我在 Android.mk 中的 APP_CPPFLAGS 中定义了一个变量,如下所示:

APP_CPPFLAGS += -DLITE

不幸的是,应用程序完全忽略了它,我仍然看到标签“Hello Cocos2dx Full”。但是,当我将它放入 Application.mk 时,同一行有效。

  • 这是为什么?
  • 如何定义变量,以便为完整版和精简版创建两个不同的 makefile?

最佳答案

APP_CPPFLAGS 和所有其他 APP_ make 变量应在 Application.mk 中设置。对于每个模块的更改,请使用LOCAL_CPPFLAGSLOCAL_CFLAGS

关于android - Android.mk 中的预处理器宏被忽略,但在 Application.mk 中有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20601420/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com