
messense/cargo-xwincargo-xwin(前身为cargo-xwinbuild)是一款简化Cargo项目交叉编译到Windows msvc目标的工具,基于xwin或windows-msvc-sysroot实现。其Docker镜像messense/cargo-xwin预安装了wine、cargo-xwin及Rust环境,无需手动配置依赖,可直接用于构建Windows平台可执行文件,特别适合非Windows环境(如Linux、macOS)下的跨平台开发。
注意:使用本软件即表示同意接受Microsoft许可协议。
cargo xwin test)bashdocker pull messense/cargo-xwin
在项目目录中执行以下命令,构建x86_64 Windows发布版:
bashdocker run --rm -it -v $(pwd):/io -w /io messense/cargo-xwin \ cargo xwin build --release --target x86_64-pc-windows-msvc
参数说明:
-v $(pwd):/io:将当前目录挂载到容器内/io路径-w /io:设置工作目录为/io(项目根目录)--release:构建发布版本--target:指定目标架构(如x86_64-pc-windows-msvc、aarch64-pc-windows-msvc)通过wine在容器内运行Windows测试用例:
bashdocker run --rm -it -v $(pwd):/io -w /io messense/cargo-xwin \ cargo xwin test --target x86_64-pc-windows-msvc
若在WSL环境使用该镜像,可直接运行Windows可执行文件:
bashdocker run --rm -it -v $(pwd):/io -w /io messense/cargo-xwin \ sh -c "CARGO_TARGET_X86_64_PC_WINDOWS_MSVC_RUNNER='/usr/bin/env' cargo xwin run --target x86_64-pc-windows-msvc"
可通过环境变量或CLI参数调整构建配置,常见选项如下:
| 环境变量 | CLI选项 | 描述 |
|---|---|---|
XWIN_CROSS_COMPILER | --cross-compiler | 交叉编译器,默认clang-cl,可选clang-cl/clang |
XWIN_ARCH | --xwin-arch | 目标架构,默认x86_64,aarch64,可选x86/x86_64/aarch/aarch64 |
XWIN_VERSION | --xwin-version | SDK主版本,默认16,支持15/16或<major>.<minor>格式 |
XWIN_SDK_VERSION | --xwin-sdk-version | SDK具体版本,默认最新版 |
XWIN_CRT_VERSION | --xwin-crt-version | CRT版本,默认最新版 |
XWIN_INCLUDE_DEBUG_LIBS | --xwin-include-debug-libs | 是否包含调试库,默认false |
示例:指定使用clang编译器构建aarch64架构
bashdocker run --rm -it -v $(pwd):/io -w /io messense/cargo-xwin \ cargo xwin build --target aarch64-pc-windows-msvc --cross-compiler clang --xwin-arch aarch64
--memory=4g)



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务