c++ cmake qt

该技术栈的部署过程分三步:

构建---编译---运行

构建:

bash 复制代码
cmake -S . -B build -G "Visual Studio 16 2019" -A x64 -DCMAKE_PREFIX_PATH="D:\Qt5_15\5.15.2\msvc2019_64\lib\cmake"

编译:

bash 复制代码
cmake --build build --config Debug
bash 复制代码
cmake --build build --config Release

运行:

bash 复制代码
.\build\Debug\QtSnake.exe

或者在文件夹中找的exe文件进行运行。

其中遇到的问题:

bash 复制代码
Automatic MOC for target QtSnake
  
  AutoMoc error
  -------------
  "SRC:/model.cpp"
  contains a "Q_OBJECT" macro, but does not include "model.moc"!
  Consider to
    - add #include "model.moc"
    - enable SKIP_AUTOMOC for this file

D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: 命令"setl
ocal [D:\code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: cd D:\c 
ode\QT\Qt_demo\build [D:\code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %err 
orlevel% neq 0 goto :cmEnd [D:\code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: D: [D:\ 
code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %err 
orlevel% neq 0 goto :cmEnd [D:\code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: D:\CMak 
e\bin\cmake.exe -E cmake_autogen D:/code/QT/Qt_demo/build/CMakeFiles/QtSnake_autogen.dir/AutogenInfo.json Rel 
ease [D:\code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %err
orlevel% neq 0 goto :cmEnd [D:\code\QT\Qt_demo\build\QtSnake.vcxproj]
D:\Microsoft Viusal 2019\MSBuild\Microsoft\

我在CMakeLists.txt 中配置了set(CMAKE_AUTOMOC ON) ,按道理mod工具会自动去链接mod文件,但是却没有构建成功。

解决:原因是我将.cpp .h .main写在了一起,当我分开之后就没有这个问题

相关推荐
迷途之人不知返1 分钟前
深入讨论模板
c++
清水白石0088 分钟前
生成器不是性能银弹:什么时候该用 `yield` 省内存,什么时候它会拖慢 Python 数据处理吞吐?
开发语言·python·原型模式
不甘先生10 分钟前
Go context 实战指南:从入门到生产级并发控制(架构师避坑手册)
开发语言·后端·golang
AI进化营-智能译站11 分钟前
ROS2 C++开发系列18-STL容器实战:deque缓存激光雷达数据|priority_queue调度任务
开发语言·c++·缓存·ai
hehelm25 分钟前
C++11 新特性
c++
初心未改HD26 分钟前
Go 泛型完全指南:从入门到实战
开发语言·golang
我不是懒洋洋28 分钟前
【数据结构】排序算法(直接插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序)
c语言·数据结构·c++·经验分享·算法·排序算法
西红柿炒番茄3129 分钟前
【Python】一个自动切换壁纸的python程序
开发语言·python
邪修king30 分钟前
UE5:C++ 实现 游戏逻辑 ↔ UI 双向联动
c++·游戏·ue5
ShiJiuD66688899933 分钟前
JSP Cookie和Session
java·开发语言