1

我想运行和编译一些Qt代码以便我可以学习它,我去了下面的网站,我看到他们提供了一些Qt示例

示例 Qt 代码

我使用最新版本,然后我复制了代码,但出现以下错误:

mainwindow.obj:-1:错误:LNK2005:main 已在 main.obj 中定义

debug\uwm.exe:-1: 错误: LNK1169: 找到一个或多个多重定义符号

所以我在' qt forum '中问了我的问题,他们建议从我的项目目录中删除“mainwindow.h”和“mainwindow.cpp”

如果我这样做了,第一个错误就消失了,但是在我构建项目之后,我得到了新的错误:

11:58:21:运行项目 uwm 的步骤... 11:58:21:配置未更改,跳过 qmake 步骤。11:58:21:开始:“C:\Qt\Qt5.0.2\Tools\QtCreator\bin\jom.exe”
C:\Qt\Qt5.0.2\Tools\QtCreator\bin\jom.exe -f Makefile。调试错误:依赖 '..\uwm\mainwindow.cpp' 不存在。jom: D:\qt\build-uwm-Desktop_Qt_5_0_2_MSVC2012_64bit-Debug\Makefile [debug] 错误2 11:58:21: 进程“C:\Qt\Qt5.0.2\Tools\QtCreator\bin\jom.exe”退出使用代码 2。构建/部署项目 uwm 时出错(套件:桌面 Qt 5.0.2 MSVC2012 64 位)执行步骤“制作”时 11:58:21:经过时间:00:00。

4

1 回答 1

1

当您在制作或尝试构建在另一台机器上编写和编译的代码后更改代码时,避免此类问题并为您的工作环境定制 .pro 文件的最佳方法是运行 make clean,然后再次运行 qmake -project然后构建它。

$ make clean
$ qmake -project
$ qmake [your .pro file name here].pro
$ make

但您应该注意,qmake 不会在您的 .pro 文件中插入生成正确 MakeFile 所需的所有参数。例如,如果您使用了诸如 boost 之类的外部库,则需要LIBS +=.pro文件中手动添加它们。最好使用“Qt Creator”,这样您就不必在每次想要构建代码时都这样做,并且这涉及到正确的 .pro 文件和配置,如解释的那样。还要注意您的编译器错误并尝试一一解决问题,直到您成功构建代码。

于 2013-04-27T19:21:47.607 回答