--- tags: date created: 星期三, 十一月 19日 2025, 8:00:42 晚上 date modified: 星期三, 十一月 19日 2025, 8:01:00 晚上 --- # 1.5.1 系统运行时与 ABI 基线 (System Runtime & ABI Baseline) **1. C++ 标准库 ABI 边界 (C++ StdLib ABI Horizon)** - **关键性**:**P0** - **信息解析**: - **当前版本**:`GLIBCXX_3.4.24`。 - **对应编译器**:**GCC 7.3.0**。 - **工程约束**: - **C++ 标准**:完美支持 **C++14**。 - **C++17 风险**:尽管 GCC 7.3 宣称支持 C++17,但 `std::filesystem` 等特性此时仍位于 `std::experimental` 命名空间,且 ABI 与 GCC 8/9(GLIBCXX\_3.4.26+)不兼容。 - **第三方库选型**:在引入预编译的第三方库(如 TensorRT, Arrow)时,必须下载 **CentOS 7 / Ubuntu 18.04** 兼容版本,严禁使用依赖 GCC 9+ 的新版库,否则必报 `version 'GLIBCXX_3.4.26' not found`。 - **探测依据**: ```bash strings /usr/lib64/libstdc++.so | grep "GLIBCXX" | tail -n 1 GLIBCXX_3.4.24 ls -l /usr/lib64/libstdc++.so … -> libstdc++.so.0.24 ``` **2. 系统基础 C 运行库 (System Glibc)** - **关键性**:**P0** - **信息解析**: - **版本**:**glibc 2.28**。 - **评价**:这是 Kylin V10 SP1 的出厂标配。相比 CentOS 7 的 glibc 2.17,它提供了更好的 `memcpy` 性能和更现代的 syscall 封装,足以支撑绝大多数现代雷达信号处理中间件。 - **探测依据**: ```bash ldd --version ldd (GNU libc) 2.28 ``` **3. 安全与压缩基础设施 (Security & Compression Infra)** - **关键性**:**P1** - **信息解析**: - **OpenSSL**:版本 **1.1.1f** (LTS)。支持 TLS 1.3。这是构建安全数据链路(如 HTTPS, Secure gRPC)的基石,且版本未过时,无需手动升级。 - **Zlib**:版本 **1.2.11**。标准且稳定,用于 HDF5 或 Log 压缩无压力。 - **探测依据**: ```bash openssl version OpenSSL 1.1.1f 31 Mar 2020 ``` **4. 全局库冲突检测 (Global Conflict Detection)** - **关键性**:**P2** - **信息解析**: - **状态**:**Clean (无污染)**。 - **解读**:在 `/usr/local` 下未发现“私藏”的 `libstdc++.so` 或 `libc.so`。这意味着系统加载器(Loader)不会因为搜索路径顺序问题加载到错误的运行时库,极大地降低了调试难度。 - **探测依据**: ```bash find /usr/local -name "libstdc++.so*" … (Empty Result) ```