gpt4 book ai didi

c++ - Qt子项目 undefined reference `main'

转载 作者:行者123 更新时间:2023-11-28 06:17:32 24 4
gpt4 key购买 nike

我正在学习使用 Qt 的模型- View -呈现器 (MVP) 模式,并且有 follow example 。我可以构建它并从构建文件夹运行它,但由于错误而无法调试它:

.../glibc-2.19/sysdeps/x86_64/start.S:118: error: undefined reference to `main'
error: collect2: error: ld returned 1 exit status

我不知道怎么了?快速谷歌搜索带来的信息不多。PS:我使用 OpenSUSE 13.1 和 Qt 4.8

最佳答案

您使用的 subdirs 模板有误。它不应包含任何内容,但应包含 SUBDIRS,有时还包含 CONFIG += ordered。您的项目模型也有点复杂。您应该先尝试更简单的方法,不要使用库和子项目。

子目录项目的好例子:How to use QMake's subdirs template?

更新

我稍微解释一下。为了编译和链接,您需要在项目中进行最少的更改:

  1. WiringClone.pro 中删除 SOURCES = $$PWD/Presenter/main.cpp
  2. CONFIG += ordered 添加到 WiringClone.proView.pro
  3. WiringClone.pro 中删除 config\ 行(这是导致原始链接错误的行)
  4. 订购子项目。 WiringClone.pro:Utilities Model View PresenterView.pro:Logic GUI

但是,即使在所有这些更改之后,您仍必须解决一个无法解决的问题:您的 Utilities 库依赖于您的 Model 库,但是您的 Model 取决于您的 Utilities。链接不能以这种方式工作。不允许循环依赖。这就是为什么我建议您放弃所有库并首先编写一个简单可靠的可执行文件。

关于c++ - Qt子项目 undefined reference `main',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29962436/

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