发布编译问题Qt C ++

时间:2014-02-09 00:52:49

标签: c++ qt

每当我在调试模式下编译我的程序时,它工作得很好,但是当我在发布模式下编译它时,我得到以下错误:

moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::lowercase(QString)'
moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::on_label_linkActivated(QString const&)'
moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::on_ReadButton_clicked()'
:-1: error: release/moc_mainwindow.o: bad reloc address 0x4 in section `.data'
collect2.exe:-1: error: error: ld returned 1 exit status

未定义的错误都指向我在程序中删除的函数。我也在" Ctrl-F"在moc_mainwindow.cpp中编写了所有这些函数,但我找不到任何函数。另外,通常当我双击错误时,我通常会得到一个参考,显示错误在代码中的位置,但它只是说"找不到文件:moc_mainwindow.cpp"

1 个答案:

答案 0 :(得分:4)

我假设你正在使用Qt Creator?如果是这样,要执行清理,您可以从构建菜单中选择“全部重建”。您也可以选择“清理”,然后右键单击您的项目并选择“运行qmake”以强制重新生成make文件:

enter image description here

只要您使用“Shadow Build”功能确保源和构建是分开的(默认情况下应该是这样),删除构建目录也会有效。

enter image description here

如果你有阴影版本,只需从Projects>中复制构建目录即可。建设与发展运行>常规窗格,并使用终端中的命令行将其删除。

相关问题