c++ - 如何为普通 C++ 项目设置 QMake

标签 c++ windows qt qt-creator qmake

我如何设置一个普通的 c++ 项目并使用 qt creator 和 qmake 构建系统(在 Windows 中!)继续开发它

我的 Qt Creator 可以完美地处理 qt 项目。我使用 MSVC2017-64 作为我的编译器。

我试着建立这样一个项目

我的项目.pro

CONFIG -= qt
CONFIG += c++17
DEFINES -= UNICODE QT_LARGEFILE_SUPPORT

SOURCES += \
    main.cpp

HEADERS += \
    main.h

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

main.cpp

#include "main.h"
#include <iostream>

int main(int argsCount, char** argsArray) {

    puts("Hello, World!");

    return 0;
}

ma​​in.h

#ifndef MAIN_H
#define MAIN_H


#endif // MAIN_H

这是我的项目页面的样子: qt creator project setup page

但毕竟当我尝试构建/编译时出现此错误:

MSVCRTD.lib(exe_winmain.obj):-1: error: LNK2019: unresolved external symbol WinMain referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)

debug\WAVE2.exe:-1: error: LNK1120: 1 unresolved externals

我在这里错过了什么?

最佳答案

我相信您需要指定这是一个控制台应用程序。您可以通过添加 CONFIG += consoleCONFIG += cmdline 来执行此操作。后者在跨平台方面取代了前者。查看qmake variable reference .

或者,如果您的应用程序确实是一个 GUI 应用程序(但通过 Qt 以外的其他方式),您可以指定 CONFIG += windows

这两个变量都会添加您当前缺少的适当库。

关于c++ - 如何为普通 C++ 项目设置 QMake,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57178815/

相关文章:

c++ - 调用模板祖 parent 的成员函数

c++ - 在 Unix 环境下隐藏代码中的注释

c++ - OpenMP 为内联函数声明 SIMD

windows - 如何仅针对Windows 7下载Docker CLI

windows - 是否可以在批处理文件的回显行中放置换行符?

javascript - 如何在Qt WebKit中将网页保存为 "save as complete webpage"

c++ - 如何在 C++/Qt 中设置 30fps 循环

c++ - 输入数据类型检查循环未按预期工作 (C++)

c++ - Win32 中的多个 WndProc 函数

windows - 运行 robocopy bat 将整个驱动器复制到另一个驱动器