Qt Creator,项目套件中的编译器被忽略

2024-02-12

我正在运行 macOS High Sierra (10.13.2) 和 Qt 5.10.0。我想在我的应用程序中使用 OpenMP。

我已将以下标志添加到我的 .pro 文件中

QMAKE_CXXFLAGS += -fopenmp
QMAKE_LFLAGS += -fopenmp
LIBS += -fopenmp

macOS 上的默认编译器不包含 OpenMP。我安装了gcc通过支持 OpenMP 的自制软件。

在 Qt Creator 的 Build & Run -> Compilers 选项卡下,我添加了自制程序g++ and gcc编译器(/usr/local/Cellar/gcc/7.2.0/bin/{gcc-7,g++-7})。然后,我选择了我正在使用的套件,并将编译器更改为我在编译器选项卡下添加的自制安装编译器。

如果我检查Makefile设置此套件并重建项目后由 Qt Creator 生成,我发现CC and CXX没有使用我指定的编译器。 这是他们的价值观Makefile:

CC            = /Library/Developer/CommandLineTools/usr/bin/clang
CXX           = /Library/Developer/CommandLineTools/usr/bin/clang++

这些应该是/usr/local/Cellar/gcc/7.2.0/bin/g++-7 and /usr/local/Cellar/gcc/7.2.0/bin/gcc-7.

我现在得到的编译器输出是:

18:14:48:开始:“/usr/bin/make”

/usr/local/Cellar/qt/5.10.0/bin/qmake -o Makefile ../Practice/Practice.pro -spec macx-g++ CONFIG+=调试 CONFIG+=x86_64 CONFIG+=qml_debug

/Library/Developer/CommandLineTools/usr/bin/g++ -c -pipe -fopenmp -g -std=gnu++11 -arch x86_64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.13.sdk -mmacosx-version -min=10.10 -Wall -W -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I../练习-I。 -I/usr/local/Cellar/qt/5.10.0/lib/QtQuick.framework/Headers -I/usr/local/Cellar/qt/5.10.0/lib/QtGui.framework/Headers -I/usr/local /Cellar/qt/5.10.0/lib/QtQml.framework/Headers -I/usr/local/Cellar/qt/5.10.0/lib/QtNetwork.framework/Headers -I/usr/local/Cellar/qt/5.10 .0/lib/QtCore.framework/标题-I。 -I/Library/Developer/CommandLineTools/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/OpenGL.framework/Headers -I/Library/Developer/CommandLineTools/SDKs/MacOSX10.13.sdk/System/Library/Frameworks /AGL.framework/标题-I/usr/local/Cellar/qt/5.10.0/mkspecs/macx-g++ -F/usr/local/Cellar/qt/5.10.0/lib -o main.o ../练习/main.cpp

clang:错误:不支持的选项“-fopenmp”

make: *** [main.o] 错误 1

18:14:49:进程“/usr/bin/make”退出,代码为 2。

构建/部署项目练习时出错(套件:桌面) 执行步骤“Make”时

为什么是Makefile由 Qt Creator 生成的不使用我在我正在使用的套件中指定的编译器?


因为 mkspecmacx-g++您使用的将覆盖 CC 和 CXX 设置。作为临时解决方法,请尝试直接在 pro 文件中设置它们:

QMAKE_CC = /usr/local/Cellar/gcc/7.2.0/bin/gcc-7
QMAKE_CXX = /usr/local/Cellar/gcc/7.2.0/bin/g++-7

您可能想要为您的套件编辑 mkspec(或制作一个新的 mkspec)并在那里设置这些变量。

要查找 mkspec 文件 (qmake.conf):

INSTALLDIR=`qmake -query QT_INSTALL_CONFIGURATION`
MKSPECNAME=`qmake -query QMAKE_SPEC`
cd $INSTALLDIR/mkspecs/$MKSPECNAME

至于为什么必须设置编译器两次:Qt Creator 是一个通用的 c++ IDE,因此能够管理非 Qt 项目,这些项目不使用qmake但无论如何都需要编译器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt Creator,项目套件中的编译器被忽略 的相关文章

  • makefile 目标依赖项取决于目标名称

    我有以下规则 SPECIAL file1 file2 o cpp a h CC c CFLAGS lt o 我希望如果 is in SPECIAL then b h已添加到依赖项列表中 有没有办法做到这一点 而不重复规则 您可以单独分配其他
  • C# - Visual Studio 中的 System.OutOfMemoryException

    我遇到问题 当我右键单击 Visual Studio 中的主窗体并转到 视图设计器 时 出现错误 它说 引发了 System OutOfMemoryException 类型的异常 堆栈跟踪 at System Reflection Asse
  • 是否有可能将 *.pdb 文件包含到发布版本中以查看错误行号?

    我做了一个项目 所有设置都是默认的 当我在调试模式 构建配置 调试 下运行它并遇到异常时 它转储到我的自定义日志记录机制 其中包含错误行号 但是当我运行发布构建时 记录相同的异常 没有行号 只有方法抛出和记录调用堆栈 是否有可能在发布配置
  • std::bind2nd 和 std::bind 与二维数组和结构数组

    我知道 C 有 lambda 并且 std bind1st std bind2nd 和 std bind 已弃用 然而 从C 的基础开始 我们可以更好地理解新特性 所以 我从这个非常简单的代码开始 使用int 数组s 第一个例子 与std
  • 如何检查号码是否只有唯一的数字?

    例如 2345 是唯一的数字 因为没有数字显示两次 但 3324 不是唯一的数字 因为 3 出现了两次 我尝试使用 但我 代码 显示但我没有得到数字我得到了数字 编辑 你不能使用字符串 number 10 number 100 number
  • 静态 OpenCV 库中未定义的引用

    我有一个使用 OpenCV 3 1 的 C 项目 并且使用共享库可以正常工作 但现在我想使用静态库 位于项目目录中的文件夹中 来编译它 因为我希望能够在未安装 OpenCV 的情况下导出它 如果需要还可以编辑和重新编译 这次我重新编译了 O
  • 尽管浮点数相同,但它们并不相等? [复制]

    这个问题在这里已经有答案了 下面的程序输出This No is not same 当两个数字相同时为什么会这样做 void main float f 2 7 if f 2 7 printf This No is same else prin
  • 多线程 - 比单线程慢

    当我使用多个线程而不是单线程运行程序时 它会变慢 不是应该更快吗 该程序应该遍历从起始目录开始的所有目录 并查找并打印所有名为 X 的文件 代码如下 while done pthread mutex lock lock if list is
  • 原子的 C++ 内存屏障

    在这方面我是个新手 谁能提供以下内存屏障之间差异的简化解释 窗户MemoryBarrier 围栏 mm mfence 内联汇编asm volatile memory 内在的 ReadWriteBarrier 如果没有简单的解释 一些好文章或
  • 如果我重新分配并且新大小为 0,会发生什么情况。这与释放等效吗?

    给出以下代码 int a NULL a calloc 1 sizeof a printf d n a a realloc a 0 printf d n a return 0 它返回 4078904 0 这个 realloc 相当于 free
  • C# 反序列化过程中创建指向父对象的指针

    我有这样的课程 Serializable public class child public Parent parent Serializable public class Parent public List
  • 禁用实体框架的默认值生成(Code First)

    我数据库中有一个列不能为空 我想将其设置为默认值在数据库中 问题是实体框架似乎自己创建了一个默认值 例如 int gt 0 并且完全忽略了数据库中的默认值约束 有没有办法禁用实体框架的默认值 我发现您可以使用以下属性来装饰您的字段 Data
  • 文本框中“结束编辑”的事件

    我正在 winform c 中使用文本框 并使用文本在数据库中进行查询 但每次文本更改时 我都需要不断查阅文本框的文本 因此 对于这些 我使用 KeyUp 但这个活动太慢了 文本框编辑完成后是否会触发任何事件 我考虑完成2个条件 控制失去焦
  • 模板定义中的友元函数

    我的问题有点相关this https stackoverflow com questions 1297609 overloading friend operator for template class one 我想重载某些类的运算符 te
  • 动态菜单创建IoC

    我想知道是否有人知道我如何创建如何使用 AutoFac 之类的东西来让我动态地允许 dll 创建自己的表单和菜单项以在运行时调用它们 所以如果我有一个 员工 dll 新入门表格 证书表格 供应商 dll 供应商详细信息来自 产品形态 在我的
  • 如何使 WinForms UserControl 填充其容器的大小

    我正在尝试创建一个多布局主屏幕应用程序 我在顶部有一些按钮链接到应用程序的主要部分 例如模型中每个实体的管理窗口 单击这些按钮中的任何一个都会在面板中显示关联的用户控件 面板包含用户控件 而用户控件又包含用户界面 WinForms User
  • 使用方法的状态模式

    我正在尝试使用方法作为状态而不是类来基于状态模式的修改版本来实现一个简单的状态机 如下所示 private Action
  • 在两个点之间创建一条曲线,每个点都具有标准化向量

    因此 我需要一种写入方法来在两点之间创建一条曲线 每个点都有一个指向任意方向的归一化向量 我一直在尝试设计这样一种方法 但一直无法理解数学 在这里 由于一张图片胜过一千个文字 这就是我所需要的 在图中 矢量垂直于红线 我相信向量需要进行相同
  • 是否可以检测流是否已被客户端关闭?

    简要介绍一下情况 我有一项服务可以通过套接字接收信息并发送回复 连接不安全 我想设置另一个可以为这些连接提供 TLS 的服务 这个新服务将提供单个端口并根据提供的客户端证书分发连接 我不想使用 stunnel 有几个原因 其中之一是每个接收
  • execlp() 系统调用输出错误

    这个非常简单的例子exec 系统调用 在这里 我试图打电话execlp 两次 但是 我没有得到例外的输出 它仅显示当前目录的第一次调用的输出 include

随机推荐

  • Clojure 中的结构共享

    我不清楚 Clojure 中的结构共享 下面是一个函数 xconj 取自 Joy of Clojure 顺便说一句 很棒的书 Building a naive binary search tree using recursion defn
  • 如何禁用
     块的 Prettier 以便保留新行(换行符)?                
                

    prettier config js module exports arrowParens always bracketSpacing true endOfLine auto printWidth 180 semi true singleQ
  • 如何使用请求模块缓冲 HTTP 响应?

    我想将 HTTP 响应的内容流式传输到变量 我的目标是通过获取图像request 并将其存储在 MongoDB 中 但图像总是损坏 这是我的代码 request http google com doodle png function err
  • 如何在使用 boto3 create_presigned_post 时添加元数据?

    想要将自定义元数据添加到我上传的文件中create presigned post来自boto3 我正在运行以下代码 但收到 403 响应 下面的代码借用自here https boto3 amazonaws com v1 documenta
  • 如何将 BytesIO 与 matplotlib 和 pyqt5 一起使用?

    我在 matplotlib 中制作了一个图表 并希望将其放入图像中并在我的 pyqt5 应用程序中使用它 有人建议我为此使用 BytesIO 到目前为止 这是我的代码 绘制我的图表 plt axis equal buff io BytesI
  • 应该是“安排-断言-行动-断言”吗?

    关于经典的测试模式安排 执行 断言 http c2 com cgi wiki ArrangeActAssert 我经常发现自己在 Act 之前添加了反断言 这样我就知道传递的断言确实是作为操作的结果传递的 我认为它类似于红绿重构中的红色 只
  • 所有执行器均已死亡 MinHash LSH PySpark approxSimilarityJoin EMR 集群上的自连接

    在 name id name 组合的数据帧上调用 Spark 的 MinHashLSH 的 approxSimilarityJoin 时 我遇到了问题 我尝试解决的问题的摘要 我有一个包含大约 3000 万个公司名称唯一 name id n
  • CALayer 作为子层不可见

    我正在尝试构建一个动画圆圈 该圆圈将按顺时针方向绘制 直到它变成完整的圆圈 如图所示iPhone 核心动画 画一个圆 https stackoverflow com questions 7991086 iphone core animati
  • Android findViewById 返回 NULL

    有时我的 xml 视图和 Android Eclipse SDK 中包含的子元素有一个奇怪的问题 例如 我有一个名为 main xml 的 xml 视图 其中有一个 LinearLayout 和一个 TextView 作为唯一的子视图 其
  • 如何在LUIS Dialog内部调用LUIS Dialog?

    我的机器人有 LUIS 对话框 有几个意图 我从 MessageController 调用 LUIS 对话框 如果检测到意图 我将启动一个子对话框 当子对话框完成后 我调用context Done response from user 在那
  • NULLS FIRST/LAST 覆盖在 Spring Boot 3/Hibernate 6 的 JPA 存储库中不再起作用

    在带有 Hibernate 5 的 Spring Boot 2 中 我们有一个如下查询 Query SELECT m FROM ProjectMember m ORDER BY m lastActive ASC NULLS LAST Lis
  • Box2D:如何手动渲染身体

    我成功地将 Box2D 安装到我的项目中 但我怎样才能渲染身体呢 假设我正在使用支持绘制多边形的东西 我只想找出主体多边形顶点的当前位置 以便用引擎绘制它 如果你能帮助我 我将非常感激 我找到了 void Box2DUtils DrawBo
  • C# 继承:更改派生类中的字段数据类型和值

    是否可以在派生类中更改基类字段数据类型和值 并且仍然调用基类方法但使用派生类值 示例代码 public class class1 protected DBContext DB get set public A DB new DBContex
  • hdfs - ls:本地异常失败:com.google.protobuf.InvalidProtocolBufferException:

    我正在尝试使用以下内容列出我在 hdfs 中的目录 ubuntu ubuntu hadoop fs ls hdfs 127 0 0 1 50075 ls Failed on local exception com google protob
  • 自动工厂注册

    我刚刚学习java 遇到了一些问题 这里我们有简单的工厂模式 public class SomeFactory public static void registerProduct String name Class
  • Swift 包和冲突的依赖项

    我见过的每个包管理器中最具挑战性的任务之一就是处理冲突的依赖关系 让我们研究以下假想的应用程序SwiftApp 这取决于一些第三方软件包 SwiftApp packageA latest email protected cdn cgi l
  • 从 AccountManager 获取基本的 google auth-token

    我想从 AccountManager 获取 Google Authtoken 我可以将其发送到我的 Web 服务 未托管在 App Engine 上 以对用户进行身份验证 我只需要电子邮件地址 最终需要他的姓名 如果不需要此权限 getAu
  • 核心数据总和性能

    我有一些理论问题要问核心数据和总和功能 我尝试将值相加核心数据表具有三种方式 获取全部并使用表达式对其进行总结 NSArray array1 self getAll self managedObjectContext int sum arr
  • 以离散的 x-y 步长“绘制”圆弧

    仅使用 x y 位置移动绘制圆弧的最佳方法是什么 例如 假设我想在点 4 4 处绘制一个半径为 4 的圆 让我们看看我的 抽屉 从 4 0 开始 每个方向的分辨率为 0 1 步 我如何创建一系列动作来完成圆圈 如果不清楚 我可以尝试更好地解
  • Qt Creator,项目套件中的编译器被忽略

    我正在运行 macOS High Sierra 10 13 2 和 Qt 5 10 0 我想在我的应用程序中使用 OpenMP 我已将以下标志添加到我的 pro 文件中 QMAKE CXXFLAGS fopenmp QMAKE LFLAGS