v1.1: 修复 Windows 跨平台兼容性 & 按钮高对比度配色
【跨平台修复】 - cmakegenerator.cpp: CMAKE_C_COMPILER / CMAKE_MAKE_PROGRAM 提前到 project() 之前设置,避免 CMake 在 Windows 回退 NMake - cmakegenerator.cpp: MinGW 编译器路径下自动推导 mingw32-make.exe - mainwindow.cpp: generateCMake() 在 Windows 下添加 -G 'MinGW Makefiles' - mainwindow.cpp: compileProject() cmake 添加生成器参数 & mingw32-make 替代 make 【UI 改进】 - 全部操作按钮升级为 Material Design 高对比度配色(Darker 系列) - 按钮添加圆角和内边距,提升可读性和视觉层次 【工程规范】 - 新增 .gitignore,排除编译产物 (.o / moc_*.cpp / Makefile / 二进制) - README.md 重写,补充 Windows 编译指南和技术要点 - 需求规格说明书更新至 v1.1
This commit is contained in:
102
README.md
102
README.md
@@ -2,6 +2,8 @@
|
||||
|
||||
Qt5 跨平台 C 工程配置器,自动生成 CMakeLists.txt
|
||||
|
||||
> 版本:v1.1 · 2026-04-28
|
||||
|
||||
---
|
||||
|
||||
## 🚀 功能特性
|
||||
@@ -9,13 +11,15 @@ Qt5 跨平台 C 工程配置器,自动生成 CMakeLists.txt
|
||||
### 1. 工程配置管理
|
||||
- ✅ JSON 格式配置文件
|
||||
- ✅ 新建/打开/保存工程
|
||||
- ✅ 拖拽 JSON 文件打开
|
||||
- ✅ Ctrl+S 快速保存
|
||||
|
||||
### 2. 编译工具链配置
|
||||
- ✅ 编译器路径选择
|
||||
- ✅ 汇编器路径选择
|
||||
- ✅ 链接器路径选择
|
||||
- ✅ 支持 MinGW/GCC/Clang
|
||||
- ✅ 支持 MinGW / GCC / Clang
|
||||
- ✅ Windows 下自动识别 MinGW 工具链
|
||||
|
||||
### 3. 文件管理
|
||||
- ✅ 虚拟目录(类似 MDK)
|
||||
@@ -26,55 +30,64 @@ Qt5 跨平台 C 工程配置器,自动生成 CMakeLists.txt
|
||||
### 4. 编译配置
|
||||
- ✅ 编译宏定义
|
||||
- ✅ 自定义编译选项
|
||||
- ✅ Debug/Release 模式
|
||||
- ✅ Debug / Release 模式
|
||||
|
||||
### 5. CMake 生成
|
||||
- ✅ 自动生成 CMakeLists.txt
|
||||
- ✅ 支持 make debug/release
|
||||
- ✅ 跨平台兼容
|
||||
- ✅ 编译器路径在 `project()` 之前设置,避免默认回退到 NMake
|
||||
- ✅ Windows 下自动指定 `-G "MinGW Makefiles"` 生成器
|
||||
- ✅ 内置一键编译(Debug / Release)
|
||||
|
||||
---
|
||||
|
||||
## 📋 使用方法
|
||||
|
||||
### 编译
|
||||
### 编译 VoiletCStudio
|
||||
|
||||
**Linux:**
|
||||
```bash
|
||||
cd VoiletCStudio
|
||||
qmake
|
||||
make
|
||||
```
|
||||
|
||||
**Windows (MSYS2/MinGW):**
|
||||
```bash
|
||||
cd VoiletCStudio
|
||||
qmake
|
||||
mingw32-make
|
||||
```
|
||||
|
||||
### 运行
|
||||
```bash
|
||||
./VoiletCStudio
|
||||
./VoiletCStudio # Linux
|
||||
VoiletCStudio.exe # Windows
|
||||
```
|
||||
|
||||
### 使用流程
|
||||
1. 新建工程
|
||||
2. 配置编译器路径
|
||||
3. 添加虚拟目录和源文件
|
||||
1. 新建工程 → 输入工程名
|
||||
2. 配置编译器路径(Windows 选 `gcc.exe`)
|
||||
3. 添加虚拟目录和 .c 源文件
|
||||
4. 添加包含目录和库文件
|
||||
5. 添加编译宏和选项
|
||||
6. 保存工程(JSON)
|
||||
7. 生成 CMakeLists.txt
|
||||
8. 使用 CMake 编译
|
||||
7. 点击「生成 CMake」→ 自动生成 CMakeLists.txt
|
||||
8. 点击「编译 Debug / Release」→ 一键编译
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ CMake 使用
|
||||
|
||||
```bash
|
||||
# 配置
|
||||
# Linux / macOS
|
||||
cmake -B build
|
||||
make debug # 编译 Debug
|
||||
make release # 编译 Release
|
||||
|
||||
# 编译 Debug
|
||||
make debug
|
||||
|
||||
# 编译 Release
|
||||
make release
|
||||
|
||||
# 或直接使用
|
||||
cmake --build build --config Debug
|
||||
# Windows (MinGW)
|
||||
cmake -G "MinGW Makefiles" -B build
|
||||
mingw32-make debug
|
||||
mingw32-make release
|
||||
```
|
||||
|
||||
---
|
||||
@@ -84,24 +97,31 @@ cmake --build build --config Debug
|
||||
```
|
||||
VoiletCStudio/
|
||||
├── src/
|
||||
│ ├── main.cpp # 主程序入口
|
||||
│ ├── mainwindow.cpp/h # 主窗口
|
||||
│ ├── projectconfig.cpp/h # 配置管理
|
||||
│ ├── main.cpp # 主程序入口
|
||||
│ ├── mainwindow.cpp/h # 主窗口(含编译流程)
|
||||
│ ├── projectconfig.cpp/h # 配置管理
|
||||
│ └── cmakegenerator.cpp/h # CMake 生成
|
||||
├── resources/ # 资源文件
|
||||
├── VoiletCStudio.pro # Qt 项目文件
|
||||
└── README.md # 说明文档
|
||||
├── VoiletCStudio.pro # Qt 项目文件
|
||||
├── README.md # 说明文档
|
||||
└── 需求规格说明书.md # 详细需求文档
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💻 跨平台支持
|
||||
|
||||
| 平台 | 编译器 | 状态 |
|
||||
|------|--------|------|
|
||||
| Windows | MinGW | ✅ |
|
||||
| Linux | GCC | ✅ |
|
||||
| macOS | Clang | ✅ |
|
||||
| 平台 | 编译器 | 生成器 | 状态 |
|
||||
|------|--------|--------|------|
|
||||
| Windows | MinGW (MSYS2) | MinGW Makefiles | ✅ |
|
||||
| Windows | MSVC | NMake | ⚠️ 未测试 |
|
||||
| Linux | GCC | Unix Makefiles | ✅ |
|
||||
| macOS | Clang | Unix Makefiles | ✅ |
|
||||
|
||||
### Windows 特别注意
|
||||
- 必须安装 **MSYS2** 并安装 `mingw-w64-gcc`、`mingw-w64-cmake`
|
||||
- 编译器路径示例:`C:/msys2/mingw64/bin/gcc.exe`
|
||||
- CMake 生成时程序自动使用 `-G "MinGW Makefiles"`
|
||||
- 构建时使用 `mingw32-make` 而非 `make`
|
||||
|
||||
---
|
||||
|
||||
@@ -111,7 +131,10 @@ VoiletCStudio/
|
||||
{
|
||||
"projectName": "MyProject",
|
||||
"projectPath": "/path/to/project",
|
||||
"outputDir": "./build",
|
||||
"compilerPath": "/usr/bin/gcc",
|
||||
"assemblerPath": "/usr/bin/gcc",
|
||||
"linkerPath": "/usr/bin/gcc",
|
||||
"virtualDirs": {
|
||||
"App": {
|
||||
"name": "App",
|
||||
@@ -127,11 +150,24 @@ VoiletCStudio/
|
||||
|
||||
---
|
||||
|
||||
## 🔧 技术要点
|
||||
|
||||
### 编译器设置顺序
|
||||
CMakeLists.txt 中 `CMAKE_C_COMPILER` **必须在 `project()` 之前设置**,否则 CMake 会在 `project()` 时自动检测编译器并可能回退到不存在的 NMake。
|
||||
|
||||
### Windows 生成器
|
||||
程序通过 `#ifdef Q_OS_WIN32` 编译期检测平台,在 Windows 上自动:
|
||||
- CMake 添加 `-G "MinGW Makefiles"` 参数
|
||||
- 构建时使用 `mingw32-make` 替代 `make`
|
||||
- 自动从编译器路径推导 `CMAKE_MAKE_PROGRAM`
|
||||
|
||||
---
|
||||
|
||||
## 🎯 特色
|
||||
|
||||
- **类 MDK 虚拟目录**:像 Keil MDK 一样管理源文件
|
||||
- **一键生成 CMake**:自动生成完整的 CMakeLists.txt
|
||||
- **跨平台**:Windows/Linux/macOS 全支持
|
||||
- **真正跨平台**:Windows (MinGW) / Linux / macOS 全支持,自动化平台适配
|
||||
- **轻量级**:纯 Qt5 实现,无额外依赖
|
||||
|
||||
---
|
||||
@@ -143,4 +179,4 @@ MIT License
|
||||
---
|
||||
|
||||
**作者:虾哥**
|
||||
**日期:2026-04-09**
|
||||
**日期:2026-04-09 · 更新:2026-04-28**
|
||||
|
||||
Reference in New Issue
Block a user