1. 环境准备:搭建编译战场
第一次接触osgEarth编译时,我对着满屏的NOTFOUND错误差点崩溃。后来才发现,环境配置就像搭积木,底层不稳全盘皆崩。Windows平台编译需要特别注意三点:工具链版本、路径规范、环境变量。我的实战环境是Windows 11 + VS2022 17.5.1 + CMake 3.26.3,这套组合经过多次验证最稳定。
1.1 工具安装避坑指南
装CMake时有个细节90%的人会忽略:不要勾选"Add CMake to system PATH"。我推荐手动添加路径到用户变量,避免权限问题导致后续编译失败。VS2022安装时要勾选"使用C++的桌面开发"和"Windows 10 SDK",实测缺少SDK会导致GEOS库编译报错。有个血泪教训:曾经因为图省事用了VS2019,结果protobuf 3.13.0死活编译不过,换成VS2022后一次成功。
1.2 目录结构黄金法则
源码目录建议采用这种结构:
code复制D:\DevEnv\
├── osg-3.6.2
├── osgearth-3.2
├── build
│ ├── osg-build
│ └── osgearth-build
└── third_party
├── gdal
└── geos
绝对不要用中文路径,哪怕用户名是中文也要改。我有次在"D:\我的项目"下编译,GDAL的CMake脚本直接报编码错误。建议所有路径用全小写英文,连空格都不要有,比如"program files"这种路径就是定时炸弹。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 第三方库:驯服依赖怪兽
编译osgEarth就像组装乐高,得先准备好所有零件。关键第三方库有7个:GDAL、GEOS、Protobuf、GLEW、CURL、zlib、SQLite3。它们的版本搭配特别讲究,我试过几十种组合后总结出这张安全矩阵:
| 库名称 | 推荐版本 | 致命陷阱 | 替代方案 |
|---|---|---|---|
| GDAL |
