3.0 KiB
3.0 KiB
Dev-C++ 运行说明
本说明适用于需要在 Dev-C++ 环境下编译本项目的情况。
结论先说:
- 可以运行
- 但不如 VS Code + 脚本方式稳定
- 如果只是为了交作业或课堂展示,优先推荐使用项目自带的 MinGW 脚本
1. 适用环境
- Windows
- Dev-C++
- MinGW-w64
建议 Dev-C++ 所使用的编译器支持:
C++17windres-municode
2. 建议工程类型
新建工程时请选择:
Windows Application
不要选择控制台程序。
3. 需要加入工程的文件
源文件
把以下文件加入工程:
src/source/stdafx.cppsrc/source/Tetris.cppsrc/source/TetrisLogic.cppsrc/source/TetrisRender.cppsrc/source/TetrisRogue.cpp
头文件
头文件不一定要加入编译列表,但建议加入工程树,便于浏览:
src/include/stdafx.hsrc/include/Tetris.hsrc/include/TetrisLogicInternal.hsrc/include/targetver.hsrc/include/resource.h
资源文件
如果当前 Dev-C++ 环境支持资源编译,可以再加入:
src/resources/Tetris.rc
4. 需要配置的选项
头文件搜索路径
加入:
src/include
链接库
确保链接以下库:
winmmgdi32user32comdlg32ole32gdiplus
编译标准
建议设置为:
C++17
预处理宏
建议定义:
UNICODE_UNICODE_WINDOWS
建议参数
如果需要手动补充:
-mwindows-municode
5. 资源文件注意事项
Dev-C++ 下最容易出问题的是资源编译。
本项目资源包括:
- 图标
- 菜单
- 关于框
资源脚本为:
src/resources/Tetris.rc
如果 Dev-C++ 对该资源文件编译不稳定,最稳妥的做法有两种。
做法一:不编译资源文件
先只编译 C++ 源文件。
这样:
- 程序主体通常能正常运行
- 但窗口图标、菜单等资源可能缺失
做法二:优先使用脚本构建
先在项目根目录执行:
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1
确认脚本方式可构建后,再视需要把 Dev-C++ 作为备用方案。
6. 资源目录不要遗漏
无论你用哪种方式运行,下面这些目录都不要删:
assets/icons/assets/images/assets/audio/assets/video/
否则会影响:
- 图标显示
- 背景图片
- 背景音乐
- 视频复活
7. 常见问题
1)能编译但没有图标或菜单
通常是资源文件没有正确编译进程序。
2)编译时报 gdiplus 或 winmm 未定义引用
说明缺少链接库,请检查工程链接设置。
3)运行时没有背景图 / 音乐 / 视频
说明程序找不到 assets/ 目录,通常是工作目录不对,或者运行时只复制了 exe 没带资源。
8. 建议
如果你的目标是:
- 交作业
- 本地演示
- 快速稳定运行
请优先使用本项目已经配好的 build-mingw.ps1 和 VS Code 配置。
Dev-C++ 更适合作为兼容环境,而不是主开发环境。