按LibreCAD readme.md文件叙述,需要在 MSYS2 的 MinGW64 环境中构建
1. 基础编译环境
bash
# 更新 MSYS2
pacman -Syu
# 安装编译工具链
pacman -S --needed base-devel git
pacman -S mingw-w64-x86_64-toolchain #选全部安装
2. Qt 6.4.0+ (MinGW version)
bash
# 安装 Qt6 MinGW 版本
pacman -S mingw-w64-x86_64-qt6-base
pacman -S mingw-w64-x86_64-qt6-tools
pacman -S mingw-w64-x86_64-qt6-svg
3. Boost 1.55.0+
bash
# 安装 Boost 库
pacman -S mingw-w64-x86_64-boost
4. 其他必要依赖
bash
# 图形和文件格式库
pacman -S mingw-w64-x86_64-freetype # 字体渲染引擎,用于将字体文件(TTF, OTF等)转换为位图 glyphs 进行显示。
pacman -S mingw-w64-x86_64-libjpeg-turbo # 高性能的 JPEG 图像编解码库
pacman -S mingw-w64-x86_64-libpng # 官方的 PNG (Portable Network Graphics) 图像格式库
pacman -S mingw-w64-x86_64-libtiff # TIFF (Tagged Image File Format) 图像格式库
pacman -S mingw-w64-x86_64-openjpeg2 # 如果需要 JPEG2000 支持
# 数学库
pacman -S mingw-w64-x86_64-glm # OpenGL 数学库
5. Rust 工具链(我计划用rust语言修改代码)
bash
# 安装 Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs/ | sh
# 或者通过 MSYS2 安装
pacman -S mingw-w64-x86_64-rust
# 安装绑定生成工具
pacman -S mingw-w64-x86_64-rust-bindgen # 让 Rust 能够调用 C/C++ 库
cargo install cbindgen # 用于从 Rust 生成 C 绑定
6. 验证安装版本
bash
# 检查 Qt 版本
qmake6 --version
# 检查 Boost 版本
pacman -Qi mingw-w64-x86_64-boost | grep Version
# 检查 Rust 版本
rustc --version
7. 构建配置
bash
# 在 MSYS2 MinGW64 环境中构建
mkdir build
cd build
# 使用 Qt6 进行配置
cmake -G "Ninja" \
-DCMAKE_BUILD_TYPE=Release \
-DQT_VERSION_MAJOR=6 \
-DBOOST_ROOT=/mingw64 \
..
ninja
8. 环境注意事项
-
确保使用 MSYS2 MinGW64 终端(不是 UCRT64)
-
Qt6 MinGW 版本与 MSYS2 MinGW64 工具链匹配
-
如果遇到 Qt6 相关问题,可以尝试:
bash# 安装额外的 Qt6 模块 pacman -S mingw-w64-x86_64-qt6-declarative pacman -S mingw-w64-x86_64-qt6-shadertools
9. 版本兼容性检查
确保安装的版本满足:
- Qt ≥ 6.4.0
- Boost ≥ 1.55.0
- GCC (MinGW) ≥ 11.2.0(通常随 MSYS2 提供)