# mytool-rs **Repository Path**: linruohan/mytool-rs ## Basic Information - **Project Name**: mytool-rs - **Description**: mytool of like rnote 框架 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-10 - **Last Updated**: 2024-11-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Windows 构建说明 ## 先决条件 安装 MSYS2 。 安装 Rust 。 可选:安装 Inno Setup 以构建安装程序。 以下说明假定使用了默认安装目录。 MSYS2 二进制目录,即 ```bash # 必须添加到系统中 环境变量 Path。 C:\msys64\mingw64\bin C:\msys64\usr\bin ``` ## 依赖 要安装必要的依赖项,请在 MSYS2 终端中运行以下命令。 ```bash pacman -S git mingw-w64-x86_64-xz mingw-w64-x86_64-pkgconf mingw-w64-x86_64-gcc mingw-w64-x86_64-clang \ mingw-w64-x86_64-toolchain mingw-w64-x86_64-autotools mingw-w64-x86_64-make mingw-w64-x86_64-cmake \ mingw-w64-x86_64-meson mingw-w64-x86_64-diffutils mingw-w64-x86_64-desktop-file-utils mingw-w64-x86_64-appstream \ mingw-w64-x86_64-gtk4 mingw-w64-x86_64-libadwaita mingw-w64-x86_64-poppler mingw-w64-x86_64-poppler-data \ mingw-w64-x86_64-angleproject ``` ## 配置 将 Rust 二进制目录添加到 MSYS2 PATH 通过将以下行添加到 ~/.bashrc。 ```bash export PATH=$PATH:/c/Users/$USER/.cargo/bin ``` ### 如果安装了 Inno Setup ```bash export PATH=$PATH:"/c/Program\ Files\ \(x86\)/Inno\ Setup\ 6" ``` ## 更改 Rust 的工具链。 ```bash rustup toolchain install stable-gnu rustup default stable-gnu ``` 为了能够在克隆源时创建项目中存在的符号链接,请确保 Developer Mode 在 Windows 中启用。它没有说明,但它允许用户创建符号链接。 最后,在某处克隆存储库并初始化子模块。 由于未知原因, libpthread.a 和 libpthread.dll.a 存在于 /mingw64/lib/ 而 rustc 显然想 链接,导致“pthread_的多个定义...”链接器错误。 要解决这个问题(以一种非常 hack 的方式),重命名 libpthread.dll.a 自 libpthread.dll.a.bak。 ```bash mv /mingw64/lib/libpthread.dll.a /mingw64/lib/libpthread.dll.a.bak ``` ## 构建应用程序 ### 初始化meson ```bash meson setup --prefix=C:/software/msys2/mingw64 _mesonbuild ``` ### 编译项目... ```bash meson compile -C _mesonbuild ``` ### 安装 ```bash meson install -C _mesonbuild # 现在可以执行已安装的二进制文件。它位于 C:\msys64\mingw64\bin\mytool.exe 因为它依赖于Msys2环境,因此不可移植。 ``` ## 构建安装程序 installer ```bash meson compile mytool-gmo -C _mesonbuild meson compile build-installer -C _mesonbuild # 如果成功,生成的安装程序将位于 _mesonbuild/mytool-win-installer.exe。 # 如果未放置在 MSYS2 默认目录 ( C:\msys64),则必须调整meson选项 msys-path 在建造之前。 meson configure -Dmsys-path = 'C:\path\to\msys64' _mesonbuild 同样,您可以使用 win-installer-name 选择 (默认为 mytool_installer)。 ```