gpt4 book ai didi

c++ - 在 Qt Creator 中禁用 "The build directory needs to be at the same level as the source directory"警告

转载 作者:行者123 更新时间:2023-12-01 22:57:24 26 4
gpt4 key购买 nike

我有一个 Qt 项目位于文件夹 /Users/donaldduck/OneDrive/Documents/myproject 中,我希望将构建目录作为源目录的子文件夹,位于 /Users/donaldduck/OneDrive/Documents/myproject/build-myproject。问题是 Qt Creator 给我一个警告,说“构建目录需要与源目录处于同一级别”:

enter image description here

除了这个警告之外,该项目编译得很好。我什至没有遇到任何构建目录是源目录的子文件夹的问题。我在网上搜索了为什么会收到此警告,我发现这可能是因为构建目录与源目录不在同一级别可能会导致相对路径出现问题。但我的程序中没有任何相对路径,我的所有文件都在 QRC 资源中。

所以这个错误很烦人,我想禁用它。我在网上搜索了解决方案,但没有找到任何结果。

此外,我仅在 Windows 计算机和 Mac 虚拟机上收到此警告。我的 Linux 虚拟机上有类似的文件夹结构(构建目录是源目录的子文件夹),但它们都没有给出任何警告。另外,在 Windows 上更新 Qt 之前,我没有收到该警告,但自从更新后,我在 Windows 上也收到了此警告。

如何禁用此警告?

最佳答案

不可能禁用,但解决方案是更改构建目录。

如果源目录和构建目录不包含相同数量/(或 Windows 上的 \),此警告会显示在它们的绝对路径名中。

假设你的源目录是“c:\dev\source\project”,那么“..\build-directory”就可以了,但是例如“..\build\directory”不是。 “c:\dev\build\project\debug”不行,但“c:\dev\build\project-debug”可以。 “./debug”和“debug”也不能作为构建目录。

你也可以观察到吗?或者所有以“..\”开头的路径都会触发此警告?

在一些罕见的极端情况下,Qmake 将无法构建不遵循“距根相同距离”规则的项目,并且在这样做时会产生真正神秘的输出。所以我们需要对这样的设置发出警告。

您可以使用默认目录,如下所示:../%{CurrentBuild:Name}

截图:image

我使用这个目录:../Build/Windows/%{CurrentBuild:Name},我不关心警告!

引用:https://bugreports.qt.io/browse/QTCREATORBUG-16616

关于c++ - 在 Qt Creator 中禁用 "The build directory needs to be at the same level as the source directory"警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45907938/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com