c – 如何在Windows上使用带有Qt Creator的Clang套件?
(这个问题类似于
this one,但不一样)
我在Windows平台上使用QtCreator,通常使用vc工具链. 有几个问题: > CLang发行版不包含平台甚至是c / c运行时库,我应该从vc工具包中使用它吗?或/和MinGW运行时?如何切换? 最后 – 如何在qtcreator中配置所有这些? 解决方法
以下步骤仅适用于QYS Creator 4.5.1的MSYS2 64位安装(安装说明
here),其中您还在MSYS2上安装了MinGW-w64和mingw32-make;并且您正在构建非QT C或C应用程序.
这些指令使用QMake,因为QBS不支持MSYS2 clang.好吧,QMake也不支持它,但我确实弄清楚如何添加对QMake的支持,我没有弄清楚QBS. 有MSVC-clang的QMake支持,但它输出MSVC makefile,所以你不能用MSYS2 make构建它.所以这不适用于我们. >用pacman安装clang.我用pacman -Ss mingw-w64-x86_64-clang,你的味道可能会有所不同. >在MSYS2 shell中,进入/ msys64 / mingw64 / share / qt5 / mkspecs / >在QT Creator中,设置一个新工具包: >转到管理工具包. 现在,您可以尝试使用Clang工具包和QMake构建项目. 我最初尝试使用QBS,由于this bug,构建失败.但是如果我复制粘贴它们并删除了伪造的-target开关,那么构建命令就会成功.因此,对于QBS用户,我猜你必须在此期间切换到QMake,直到他们修复该bug. 故障排除:我有时会收到错误Project ERROR:无法解析编译器输出的默认搜索路径.这是QMake缺乏对clang支持的问题.如果我构建在.pro文件的子目录中,则错误往往不会发生,但如果我在兄弟目录中构建,则会发生错误. 解决方法:回到win32-clang-msys / qmake.conf.将第一个铿锵声改回g.然后“运行Qmake”(来自QT创建者或命令行),然后将其更改回来.第一次运行QMake时,它会写入文件.qmake.stash,然后不需要再次生成它.这个文件的内容对我来说是假的,但无论如何建筑似乎都有效. 未定义的引用:我发现与-static的链接产生了一堆对__imp__cxa_名称的未定义引用.不确定这里的问题是什么,但可能与生成.qmake.stash的错误有关.我想Qt开发人员需要正式为QMake添加非MSVC Clang支持. 多个定义:CLang链接器为内联DLLexport函数提供了多个定义.我发现没有解决方法; g有-fno-keep-inline-dllexport来避免这个问题,但是CLang 5不支持该标志. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |