d5d381759e
- 新增计算方案保存与方案二筛选参数 - 支持方案二桨角规则和有效数据导出 - 优化功率曲线绘制和设计功率展示
1.8 KiB
1.8 KiB
name, description
| name | description |
|---|---|
| wind-build-run | wind_power_cal 本地构建与运行规范。用于编译后端、构建前端、打包 runtime、或本地运行前后端时,按正确脚本和顺序操作。 |
本地构建与运行
首次 / Drogon 缺失
third_party/ensure_third_party.sh 源码编译 Drogon+Trantor → third_party/drogon/install/<arch>/。产物存在则秒过(幂等)。详见 wind-third-party-libs。
打包
bash package.sh --build-type Release
→ runtime/wind_power/:wind_server + config/ + web/(前端 dist)+ libs/(libdrogon/libtrantor .so)+ logs/。
--publish 额外生成 publish/wind_power-<ver>.tar.gz。
运行
- 一键(后端托管 SPA):
./run.sh,访问 http://localhost:8080/ - 仅后端:
bash backend/run.sh(先 build.sh 再启动,设LD_LIBRARY_PATH=libs) - 开发(前后端分离热更):
- 后端
bash backend/run.sh(:8080) - 前端
cd frontend/web_app && npm install && npm run dev(:5173,代理/api→:8080)
- 后端
后端构建细节
backend/CMakeLists.txt:find_package(Drogon CONFIG REQUIRED),file(GLOB_RECURSE src/*.cpp),链Drogon::Drogon,includesrc+third_party。- 架构检测
x64/arm64/arm32;自动注入DROGON_LOCAL_PREFIX。 - 运行期 .so 解析:RPATH
$ORIGIN/../lib+ run.sh 设LD_LIBRARY_PATH=<app>/libs。 - Drogon 编译依赖(Ubuntu):
libssl-dev libc-ares-dev uuid-dev libjsoncpp-dev zlib1g-dev libbrotli-dev。
前端构建
npm run build→frontend/web_app/dist/;package.sh会 rsync 到runtime/wind_power/web/。- 入口
src/main.jsx→App.jsx(react-router)。
调用
ensure_third_party.sh时必须显式传THIRD_PARTY=<root>/third_party(见 wind-third-party-libs),否则SCRIPT_DIR推导出错。