【问题标题】:Unreal Engine 4 - Android NDK - Visual Studio - sys/cdefs.h - "No function renaming possible"虚幻引擎 4 - Android NDK - Visual Studio - sys/cdefs.h - “无法重命名函数”
【发布时间】:2015-06-15 23:17:39
【问题描述】:

我正在尝试在 Visual Studio 2013 中编译包括 Android NDK 在内的 Unreal Engine 4 项目,但出现错误,我不知道如何解决

PublicIncludePaths.Add("D:/NVPACK/android-ndk-r9c/platforms/android-19/arch-arm/usr/include");

D:\NVPACK\android-ndk-r9c\platforms\android-19\arch-arm\usr\include\sys/cdefs.h(252): 致命错误 C1189: #error : "No function可以重命名”

这是导致错误的代码

#ifdef __lint__
#define __RENAME(x) __symbolrename(x)
#else
#error "No function renaming possible"
#endif /* __lint__ */

【问题讨论】:

    标签: visual-studio android-ndk unreal-engine4


    【解决方案1】:

    愚蠢的我!我试图编译虚幻编辑器的源代码,换句话说,就是为 Windows 编译源代码。使用 Android 的 Editor Launch/Package 是使用 Android NDK 标头进行编译的正确方法。

    .Build.cs

    if ((Target.Platform == UnrealTargetPlatform.Android))
    {
        PublicIncludePaths.Add("D:/NVPACK/android-ndk-r9c/platforms/android-19/arch-arm/usr/include");
    }
    

    .cpp

    #include "Android/AndroidApplication.h"
    ...
    JNIEnv* Env = FAndroidApplication::GetJavaEnv();
    jint VersionJint = Env->GetVersion();
    int8 Version = (int8)VersionJint;
    GEngine->AddOnScreenDebugMessage(2, 0.5f, FColor::Cyan, FString::FromInt(Version));
    

    看起来我也需要所有#includes 的例外。

    【讨论】:

      猜你喜欢
      • 2017-02-04
      • 1970-01-01
      • 2020-12-11
      • 1970-01-01
      • 2020-05-13
      • 2018-02-18
      • 1970-01-01
      • 2020-07-24
      • 2015-02-04
      相关资源
      最近更新 更多