我正在尝试在Visual Studio 2013中编译包括Android NDK在内的虚幻引擎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:“没有功能重命名可能“
这是负责错误的代码
#ifdef __lint__
#define __RENAME(x) __symbolrename(x)
#else
#error "No function renaming possible"
#endif /* __lint__ */
答案 0 :(得分:0)
愚蠢的我!我试图编译虚幻编辑器的源代码,换句话说是为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例外。