在 Windows 上为 Android 构建时找不到 windows.h 文件
Posted
技术标签:
【中文标题】在 Windows 上为 Android 构建时找不到 windows.h 文件【英文标题】:windows.h file not found when building for Android on windows 【发布时间】:2020-09-24 13:10:36 【问题描述】:当我尝试使用 Qt 5.14.2 static android kit 构建我的应用程序时遇到问题。我在搜索时看到了类似的错误,但没有找到解决方案。 我不知道为什么,但我在 OpenSSL 目录 内的 rand.h 文件中收到此错误:
fatal error: 'windows.h' file not found
# include <windows.h>
我使用的是 Windows 10
Qt 5.14.2 静态
NDK 版本:21.1.6352462
有什么建议或提示吗?提前致谢。
更新:与正常(非静态)Qt 5.15.0
相同的错误【问题讨论】:
【参考方案1】:是的,#include <>
表示在您的文件系统中搜索 h 文件。这条线可能包含#if Q_OS_...
或其他类似的内容。检查选项 --target=
的编译输出
再多一点:您在(我猜)Windows 上为 android 构建应用程序。 Qt 需要了解 app-OS 与现在不一样。关键字是交叉编译
【讨论】:
这是评论,不是答案。 @IInspectable,我可以为 TS 添加“仔细检查 Qt 创建者设置”,但它仍然无法回答。我猜他不明白什么是问题。我解释一下。换句话说,下一个问题是为什么 Qt 尝试为 android 应用程序包含 windows.h? @user123445151156,我看到你本地化了#include 错误。下一步 - 检查框架中的#If
#endif
是否有错误 - 它如何决定使用操作系统?如果 OpenSSL 从源代码构建,您应该为目标平台构建并链接它,在您的情况下为 Android。以上是关于在 Windows 上为 Android 构建时找不到 windows.h 文件的主要内容,如果未能解决你的问题,请参考以下文章
Ionic - 在 Windows 上为 IOS 构建(适用于最新的 IOS 和 Ionic)
在 Azure Devops 上运行构建时找不到资产文件 project.assets.json
使用 CakeBuild 构建 Xamarin.Android 项目时找不到 mscorlib
在android studio中构建apk时找不到Aapt_rules.txt