diff --git a/csdk/README.md b/csdk/README.md index 2f4e1fe..667c9db 100644 --- a/csdk/README.md +++ b/csdk/README.md @@ -36,7 +36,10 @@ csdk/ ## 构建 -### 方式 A:直接 GCC(当前 Windows 环境) +### 方式 A:直接 GCC(Windows + MinGW-w64) + +编译器:WinLibs MinGW-w64(gcc 16.2.0,UCRT),`winget install BrechtSanders.WinLibs.POSIX.UCRT`。 +2026-10-08 已用该编译器完成全部程序与测试的编译验证(见各节"验证状态")。 ```powershell # CLI 工具 @@ -46,10 +49,10 @@ gcc -O2 -w -DMAG160C_STATIC -I"csdk\third_party\libusb\win64" -I"csdk\include" - csdk\src\mag160c_tcm.c csdk\src\mag160c_error.c csdk\src\mag160c_display.c ` csdk\third_party\libusb\win64\libusb-1.0.x64.a -# 主程序 demo3(官方管线复刻) +# 主程序 demo3(官方管线复刻;demo3 调用 render API,必须链接 mag160c_render.c) gcc -O2 -w -DMAG160C_STATIC -I"csdk\third_party\libusb\win64" -I"csdk\include" -I"csdk\src" ` -o build-artifacts\mag160c_demo3.exe csdk\tools\mag160c_demo3.c ` - csdk\src\mag160c_display.c csdk\src\mag160c_error.c ` + csdk\src\mag160c_render.c csdk\src\mag160c_display.c csdk\src\mag160c_error.c ` csdk\third_party\libusb\win64\libusb-1.0.x64.a -lgdi32 -luser32 # 官方抓帧工具 @@ -299,8 +302,8 @@ build-artifacts\csdk_test_display.exe `RenderPipeline.androidLutOf` 的逐行转写,两边同一套 golden 向量;0 = 保持 PC 语义, 与 `analysis/render_offline.c` 的黄金夹具一致),两个 demo 默认打开(真机验证: 同场景照片逐像素平均差 4.5/255、逐计数中位差 2 级,见 §10/§11)。 - ⚠️ **本机没有 C 编译器**(gcc/clang/NDK 都没有),所以这段 C **未编译**—— - 算法本身由 Kotlin golden 测试锁定,合入前请在带编译器的环境编译 + 跑回归。 + ✅ **编译验证(2026-10-08)**:`mag160c_render.c`(含 `android_lut_rebuild`)与 + `mag160c_linux_demo.c` 全链接通过(gcc 16.2.0 / WinLibs UCRT)。 - 同一节还有个 `upscale_nearest`:官方**安卓**路径没有 160→320 的插值级 (SDK 给 App 的位图就是 160×120,App 用 `new Paint(1)`(无 FILTER_BITMAP)最近邻放大), 而 PC 版的双线性会展出一层"全幅/半幅"交错细纹(暗/低温区最明显)。 @@ -329,5 +332,5 @@ build-artifacts\csdk_test_display.exe - DDT 尾部辐射标定记录的解析(阈值/gain/offset/shift/±500/eps,偏移表见该文档 §4d); - BasePara2 的 `ATZeroErrorPoint`/`ATErrorSlope`/`fpaTempFix`(线上偏移同样见该文档); - 曲线 A 与本 SDK 的 `T2E` 表相同(646 项,已验证逐项一致)。 - 注:本机当前**没有 C 编译器**(gcc/clang 均缺失),以上 C 改动需在有编译器的环境里 - 编译 + 跑 csdk 测试后再提交。 + 注:C 侧改动已随 2026-10-08 的编译验证一并覆盖(gcc 16.2.0 全部源文件 + 编译 + csdk 测试套件通过)。