【问题标题】:Qt with MinGW: g++: error: CreateProcess: No such file or directoryQt with MinGW: g++: error: CreateProcess: No such file or directory
【发布时间】:2018-11-22 00:37:10
【问题描述】:

我有一个最初使用 Qt 4.8.6 为嵌入式 linux + ARM 构建的项目。这个项目是一个用户界面,它已经被编码为一个 Windows 桌面应用程序,几年前我成功地这样做了。现在我必须再次为 Windows 重新编译它,但我一直收到此错误

g++:错误:CreateProcess:没有这样的文件或目录

在编译 main.cpp 时。

在网上找到的解决方案没有帮助。完成的步骤:

  • 我最初试图用 Qt 5.7 编译它。认为可能是库不兼容,我安装了 Qt 4.8.6 和对应的 MinGW 版本。 [编辑] 我使用 Hello World 程序测试了安装,取得了 100% 的成功

  • this link 之后,我将新 Qt 和 MinGW 的路径都添加到了 PATH 中,但没有成功。请注意,我可以使用 Qt 5.7 完美地编译和运行其他项目,并且它没有在 PATH 中链接。

  • this link 之后,我得出结论,我有几个链接到项目的库尚未编译。我设法成功编译了所有这些,并仔细检查了我的 .pro 文件中的包含路径。这显然是一个需要解决的问题,但对所讨论的问题没有帮助。

  • 我检查了任何可能与 Windows 不兼容的新库;找到一个并将其标题包含在定义中。没有结果。

所以现在我没有想法。不幸的是,我不记得几年前在为 Windows 编译应用程序时遇到此错误,所以我什至不知道发生了什么。这是我在编译输出中得到的消息:

任何帮助将不胜感激。

【问题讨论】:

  • 你用来构建的命令是什么?添加路径后是否重新启动?有你使用的makefile吗?我曾经遇到过类似的问题,只是因为 makefile 中有一个简单的拼写错误。
  • 你可能需要重新运行 qmake。
  • @VishaalShankar 我在 Qt Creator 中构建它:clean allrun qmakerebuild all。添加路径后我重新启动。我使用在 QtCreator 中执行刚才提到的步骤生成的 Makefile。
  • @drescherjm 我在上面提到的每个步骤之后都这样做了,但没有成功。

标签: c++ qt gcc g++ mingw


【解决方案1】:

我设法找到了问题的解决方案。

.pro 文件有一个定义DEFINES += COMPILE_DATE=\\\"$$DATE\\\",它调用了定义DATE =$$system($${PWD}/../../get_compile_date.bat)。指出此定义的 .bat 文件在某种程度上与 Windows 不兼容。它的内容是date | tr -d " "。一旦对该文件的调用进行了注释,问题就会停止发生。

【讨论】:

    猜你喜欢
    • 2021-05-18
    • 2022-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-11
    • 2012-06-03
    相关资源
    最近更新 更多