QT安卓开发在调试时遇到错误 40C

请教各位Qt大神,在运行Qt编谢程序时,总是不成功,会出现如下错误:
图片说明
详细错误说是:
C:\Android\android-ndk-r10e\sources\cxx-stl\gnu-libstdc++\4.9\include\cstddef:44: error: bits/c++config.h: No such file or directory
#include ^
下面是我的环境变量,之前看网上有人说环境变量有问题,但是我看我的应该没错啊?
图片说明
使用的QT版本为5.6.1,AndroidNDK为r10e。

3个回答

创建 CMake 构建脚本
如果没有一个 CMake 构建脚本,你需要自己手动创建一个,并添加一些合适的 CMake 命令。CMake 构建脚本是一个空白的文本文档(后缀为 .txt 的文件),名字必须为 CMakeLists.txt。

注意:如果你的项目使用了 ndk-build,你就不需要创建 CMake 构建脚本,只需要提供一个路径链,将你的 Android.mk 文件链接到 Gradle 中即可。

将一个空白的文本文档变成一个 CMake 构建脚本,你需要这么做:

打开 IDE 左边的 Project 面板,选择 Project 视图。
在你的 module 根目录下,右键,选择 New > File。
输入 “CMakeLists.txt” 作为文件名,并点击 OK。
现在,你可以添加 CMake 命令来配置你的构建脚本了。为了让 CMake 将源代码(native source code)编译成 native library。需要在编译文件中添加 cmake_minimum_required() 和 add_library() 命令:

复制代码
1 # Sets the minimum version of CMake required to build your native library.
2 # This ensures that a certain set of CMake features is available to
3 # your build.
4
5 cmake_minimum_required(VERSION 3.4.1)
6
7 # Specifies a library name, specifies whether the library is STATIC or
8 # SHARED, and provides relative paths to the source code. You can
9 # define multiple libraries by adding multiple add.library() commands,
10 # and CMake builds them for you. When you build your app, Gradle
11 # automatically packages shared libraries with your APK.
12
13 add_library( # Specifies the name of the library.
14 native-lib
15
16 # Sets the library as a shared library.
17 SHARED
18
19 # Provides a relative path to your source file(s).
20 src/main/cpp/native-lib.cpp )
复制代码

当你使用 add_library(),将一个源文件(source file)或库添加到你的 CMake 构建脚本,同步你的项目,然后你会发现 Android studio 将关联的头文件也显示了处理。然而,为了让 CMake 在编译时期能定位到你的头文件,你需要在 CMake 构建脚本中添加 include_directories() 命令,并指定头文件路径:

1 add_library(...)
2
3 # Specifies a path to native header files.
4 include_directories(src/main/cpp/include/)

weixin_37027259
巴扎黑酋长 我是用的QTCreator,感觉您的回答用不了啊。
大约 2 年之前 回复
weixin_37027259
巴扎黑酋长 我是用的QTCreator,感觉您的回答用不了啊。
大约 2 年之前 回复
weixin_37027259
巴扎黑酋长 我是用的QTCreator,感觉您的回答用不了啊。
大约 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问