编译Qt项目时出现错误“ g ++:CreateProcess:没有这样的文件或目录”

问题描述 投票:0回答:1

我面临着这个经典的G ++编译器错误(实际上是MingW,因为我在Windows中)“ CreateProcess:没有这样的文件或目录”。

实际上是经典的,在SO上有很多论坛和帖子,有人报告有此错误,并且症状,解释和解决方案基本上是相同的:该人无法编译任何代码,并且已完成修复通过添加编译器文件所在的目录来更正PATH环境变量。原因通常是编译器安装有问题的结果。

但是,我的问题有点不同:我的安装很好,以至于我可以使用完全相同的编译器套件成功编译其他项目(特别是Qt项目)。仅当我尝试编译我一段时间未编译的特定Qt项目时,才会发生该错误。不幸的是,编译器/ Qt没有给我任何线索,说明当其他项目进行得很好时,为什么这个特定项目无法编译。不过,我仍然检查了我的PATH env变量,并且那里有G ++文件目录。

那么可能是什么原因引起的?我检查了Qt .pro文件中是否有“特殊”东西,一切都很好。很高兴注意到我已经通过了该项目的编译,这已经是一个相当老的项目了,我不记得曾经遇到过这个问题,.pro文件中的任何重大更改都是最近进行的。

(如果有帮助:)

Error message

qt compiler-errors g++
1个回答
0
投票

我设法找到答案:糟糕的编程。

此应用程序适用于Windows和Linux。在Linux版本中,团队创建了一个脚本,该脚本自动获取当前SVN版本并将其添加到.pro中的变量中:

DATE = $$system($${PWD}/../../get_compile_date.bat)

然后使用通知的值创建定义:

DEFINES += COMPILE_DATE=\\\"$$DATE\\\"

问题是,我正在Windows中编译,因此MinGW无法正确地“理解”这种情况,从而导致错误。一旦删除了对脚本的调用,问题就消失了。

DEFINES += COMPILE_DATE=\\\"03-03-2020\\\"
© www.soinside.com 2019 - 2024. All rights reserved.