gpt4 book ai didi

c++ - QT Subdir-未定义对 main 的引用-错误

转载 作者:行者123 更新时间:2023-12-02 02:28:48 25 4
gpt4 key购买 nike

我有一个简单的 QT 子目录项目,其结构为

TestProject/
TestProject.pro
Subdir1/
Subdir1.pro
sources/
main.cpp
Subdir2/
Subdir2.pro
headers/
mainwindow.h
sources/
mainwindow.cpp

这是我的 .pro 文件测试项目.pro

TEMPLATE = subdirs
SUBDIRS += \
Subdir1 \
Subdir2

Subdir1.pro

SOURCES += \
main.cpp

Subdir2.pro

QT += sql

SOURCES += \
mainwindow.cpp \
HEADERS += \
mainwindow.h \

当我尝试运行该应用程序时,出现以下错误:

(.text+0x18):-1: error: undefined reference to `main'

我在 Ubuntu 12.04 上使用 Qt Creator IDE。我花了整个上午的时间试图解决这个问题,我必须在 .pro 文件中放入什么,以便 Qt 能够构建该项目?

提前致谢

最佳答案

看起来您正在尝试将所有源文件构建到一个可执行文件中。这不是 subdirs 模板的用途,它用于创建一个构建多个不同目标的单个 Makefile(例如两个不同的可执行文件,或一个可执行文件和一个库)。

您可能想要的是只有一个 .pro 文件,例如

SOURCES = Subdir1/mainwindow.cpp Subdir1/main.cpp

或者您可以将子目录 pro 文件制作为(按照惯例).pri 文件。然后在顶层你只需要做:

include(Subdir1/Subdir1.pri)
include(Subdir2/Subdir2.pri)

关于c++ - QT Subdir-未定义对 main 的引用-错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12177241/

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