我正在尝试将一个简单的项目迁移到Qt 5.该项目最初是为Qt 4编写的,它在那里编译得很好.
但是,在使用Qt 5进行编译时,我收到此错误:
error: C1083: Cannot open include file: 'ui_mainwindow.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)
现在我知道ui_mainwindow.h应该在编译时自动生成,并且我已经检查过并且在使用Qt 5编译时没有生成它.
注意
这也发生在新创建的项目上.
重现步骤:
我下载了 nitroshare.tar.gz 文件,因为我想将它安装在我的 kali linux 上。我按照github页面上的说明进行安装并下载了安装所需的所有软件包。
当我使用 cmake 命令时,它向我显示此错误
未知的 cmake 命令 qt5_wrap_ui
这是 CMakeList.txt 文件
cmake_minimum_required(VERSION 3.7)
configure_file(config.h.in "${CMAKE_CURRENT_BINARY_DIR}/config.h")
set(SRC
application/aboutdialog.cpp
application/application.cpp
application/splashdialog.cpp
bundle/bundle.cpp
device/device.cpp
device/devicedialog.cpp
device/devicelistener.cpp
device/devicemodel.cpp
icon/icon.cpp
icon/trayicon.cpp
settings/settings.cpp
settings/settingsdialog.cpp
transfer/transfer.cpp
transfer/transfermodel.cpp
transfer/transferreceiver.cpp
transfer/transfersender.cpp
transfer/transferserver.cpp
transfer/transferwindow.cpp
util/json.cpp
util/platform.cpp
main.cpp
)
if(WIN32)
set(SRC ${SRC} data/resource.rc)
endif()
if(APPLE)
set(SRC ${SRC}
data/icon/nitroshare.icns
transfer/transferwindow.mm
)
set_source_files_properties("data/icon/nitroshare.icns" PROPERTIES
MACOSX_PACKAGE_LOCATION Resources
)
endif()
if(QHttpEngine_FOUND)
set(SRC ${SRC}
api/apihandler.cpp
api/apiserver.cpp
)
endif()
if(APPINDICATOR_FOUND)
set(SRC ${SRC}
icon/indicatoricon.cpp
)
endif()
qt5_wrap_ui(UI
application/aboutdialog.ui
application/splashdialog.ui
device/devicedialog.ui
settings/settingsdialog.ui
transfer/transferwindow.ui
) …
Run Code Online (Sandbox Code Playgroud)