# vbspro_build **Repository Path**: lljwork2021/vbspro_build ## Basic Information - **Project Name**: vbspro_build - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2026-04-29 - **Last Updated**: 2026-04-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # VBSPRO Build 本目录包含了 VBS (Vehicle Bus System) 项目的构建配置文件和自动化构建脚本。 ## 代码仓库介绍 ### 1. `cmake-build.sh` - 自动化构建脚本 这是一个功能完整的 bash 脚本,用于自动化构建和安装 VBS 项目。 #### 功能特性 - **自动构建**: 使用 CMake 和 Ninja 构建系统 - **依赖管理**: 自动下载和管理第三方依赖库 - **安装管理**: 支持自定义安装路径 - **清理功能**: 支持清理构建目录 - **错误处理**: 遇到错误时立即退出 #### 使用方法 脚本支持两种命令格式:新版本格式(推荐)和旧版本格式(兼容支持)。 **新版本格式(推荐):** ```bash # 基本构建并安装 ./cmake-build.sh -p <安装路径> [--openssl-root ] [--toolchain ] # 例如: ./cmake-build.sh -p /home/user/install_dir --openssl-root /opt/openssl-1.1 --toolchain /opt/tc/toolchain.cmake # 仅清理构建目录 ./cmake-build.sh -c # 先清理再构建并安装 ./cmake-build.sh -c -p <安装路径> [可选参数同上] # 查看帮助信息 ./cmake-build.sh -h ./cmake-build.sh --help ``` **旧版本格式(兼容支持):** ```bash # 基本构建并安装 ./cmake-build.sh <安装路径> # 例如: ./cmake-build.sh /home/user/install_dir #绝对路径 ./cmake-build.sh install_dir #相对路径,生成到out/vbs/install_dir中 # 仅清理构建目录 ./cmake-build.sh clean # 先清理再构建并安装 ./cmake-build.sh clean <安装路径> ``` **兼容性说明:** - 脚本同时支持新旧两种命令格式,确保向后兼容 - 新版本格式提供更多功能选项(如OpenSSL路径、工具链配置等) - 旧版本格式保持简单易用,适合基本构建需求 #### 构建配置选项 脚本会自动配置以下 CMake 选项: #### 系统要求 - **OpenSSL 1.1**: 必需的安全库 - **CMake 3.16+**: 构建系统 - **Ninja**: 构建工具 - **C++17 编译器**: 支持 C++17 标准的编译器 #### 安装 OpenSSL 1.1 ```bash sudo apt-get update sudo apt-get install libssl-dev sudo apt-get install libssl1.1 ``` ### 2. `CMakeLists.txt` - CMake 配置文件 这是项目的主要 CMake 配置文件,定义了整个 VBS 项目的构建规则。 #### 主要功能 1. **项目配置** - 项目名称: `livbs` - 最低 CMake 版本: 3.16 - C++ 标准: C++17 2. **统一库构建模式** - 支持构建统一的 `livbs` 库 - 自动收集所有子模块的源文件和依赖 - 支持静态库和动态库构建 3. **第三方依赖管理** - **Asio**: 网络编程库 (asio-1-29-0) - **Boost**: C++ 库集合 (boost-1.77.0) - **Google Test**: 单元测试框架 (release-1.10.0) - **foonathan_memory**: 内存管理库 (v0.7-1) - **TinyXML2**: XML 解析库 (10.0.0) 4. **构建选项** - 安全功能支持 - SQLite3 支持 - 代码覆盖率支持 - 严格实时模式 - 测试和示例构建控制 5. **子模块管理** - `utils`: 工具库 - `thirdparty`: 第三方库 - `evbs`: 事件总线系统 - `rpc`: 远程过程调用 - `dsf`: 数据服务框架 - `framework`: 框架组件 - `tools/daemon`: 守护进程工具 - `vbsauth`: VBS 认证模块(可选) ## 常见问题 ### Q: 构建失败提示缺少 OpenSSL? A: 请按照上述说明安装 OpenSSL 1.1 开发库。 ### Q: 如何清理构建缓存? A: 使用 `./cmake-build.sh clean` 命令清理构建目录。 ### Q: 如何查看详细的构建信息? A: 在 CMakeLists.txt 中取消注释相关的 `message()` 语句。 ## 版本更新 ### v2.0 - 兼容性改进(当前版本) - **向后兼容**:完全支持旧版本命令格式(`clean install`) - **新功能**:支持新版本命令格式(`-c -p install`) - **增强选项**:新增OpenSSL路径和工具链配置支持 - **改进文档**:更新帮助信息和README说明 ### 迁移指南 如果您之前使用旧版本命令格式,可以继续使用,无需修改: - `./cmake-build.sh clean install` ✅ 继续有效 - `./cmake-build.sh install` ✅ 继续有效 - `./cmake-build.sh clean` ✅ 继续有效 新版本格式提供更多功能,建议逐步迁移: - `./cmake-build.sh -c -p install` 🆕 推荐使用 - `./cmake-build.sh -p install` 🆕 推荐使用 ## 注意事项 1. 首次构建可能需要较长时间,因为需要下载第三方依赖 2. 确保网络连接正常,以便下载依赖库 3. 建议在 Release 模式下进行生产构建 4. 如需调试,可以修改 `CMAKE_BUILD_TYPE` 为 `Debug` 5. 脚本同时支持新旧两种命令格式,确保向后兼容