Files
MusicServer/tools/mssdk-sign/build-mingw.sh
T
snowy-yang 14f7295fd4 chore(tools): 入库汽水签名工具链(独立签名服务与逆向记录)
- tools/mssdk-sign/:C++ 实现的签名服务,附 mssdk 内部结构记录、MinGW 与
  MSVC 两套构建脚本、调用示例 client.mjs 与自检入口
- signer/server.mjs:Node 实现的等价签名服务,面向「主服务不在 Windows 上」
  的场景——bdms.node 是 Windows PE 原生模块,只能由 Windows 版 Node 加载,
  故把「加载官方模块」关进独立进程,主服务经 HTTP 取 X-Helios / X-Medusa

两者都不被 src/sdk 引用:运行期走 sdk/qs/mssdk.ts 直接加载官方 bdms.node,
它们是组件升级、签名失效时重新定位入口并验证的手段,放在仓库里才能跟着
代码一起维护。

专有二进制(mssdk-sign.exe、metasecml.dll)由 tools/mssdk-sign/.gitignore
排除,不随仓库分发。
2026-10-03 10:50:34 +08:00

15 lines
587 B
Bash

#!/usr/bin/env bash
# Linux 上交叉编译成 Windows exe(给 Wine 跑)。
# 依赖: apt install mingw-w64 (Debian/Ubuntu)
set -euo pipefail
CXX=${CXX:-x86_64-w64-mingw32-g++}
command -v "$CXX" >/dev/null || { echo "[x] 找不到 $CXX,请先装 mingw-w64"; exit 1; }
"$CXX" -std=c++17 -O2 -Wno-unknown-pragmas \
-static -static-libgcc -static-libstdc++ \
-o mssdk-sign.exe mssdk-sign.cpp \
-pthread -lws2_32 -lversion
echo "[ok] 生成 mssdk-sign.exe(静态链接,不依赖 libstdc++/winpthread DLL)"
echo " 自检: wine ./mssdk-sign.exe --selftest --dll ./metasecml.dll"