1. 环境准备:从零开始的Ubuntu 22.04基础配置
如果你刚拿到一台安装了Ubuntu 22.04的电脑,或者准备在虚拟机里搭建环境,第一步不是急着敲命令,而是把基础打牢。我自己在给团队部署开发环境时,经常遇到新手一上来就照着教程复制粘贴,结果因为系统环境不统一,导致后面编译错误百出,排查起来特别费劲。所以,咱们先花点时间,把地基夯实。
Ubuntu 22.04这个长期支持版本,系统本身比较稳定,软件源里的包也足够新。但为了确保后续安装openMVS及其依赖库时一路顺畅,我建议你先做两件事:第一,更新系统到最新状态;第二,建立一个清晰的工作目录。更新系统不只是运行 sudo apt update 那么简单,我习惯在更新后紧接着做一次升级,把已有的软件包都升级到最新版,这样可以避免一些因版本滞后导致的依赖冲突。命令很简单,就是 sudo apt update && sudo apt upgrade -y,中间的 -y 参数是为了自动确认,省得一直按回车。这个过程可能会花点时间,取决于你的网络速度和更新包的数量,泡杯茶等着就好。
接下来,你需要一个“工作车间”。我强烈建议你不要在用户主目录或者乱七八糟的地方直接操作。专门创建一个文件夹,比如就叫 Projects 或者 MVS_Workspace,以后所有相关的源码、编译目录都放在这里面。这样做的好处是,项目结构一目了然,出了问题也方便清理和重建。你可以用 mkdir -p ~/MVS_Workspace 来创建这个目录,并用 cd ~/MVS_Workspace 进入。这个路径就是你未来战斗的主战场了。另外,检查一下你的系统是否已经安装了最基础的构建工具,比如 git, cmake, gcc, g++。虽然Ubuntu通常预装了一些,但版本可能不符合要求。你可以用 git --version, cmake --version, gcc --version 分别查看。如果显示“command not found”,那就需要安装。安装这些基础工具的命令,原始文章里提到了,但我想强调的是,安装时最好指定一下版本,尤其是 gcc 和 g++。因为openMVS对编译器版本有一定要求,而Ubuntu 22.04默认的GCC版本是11,这个版本虽然新,但有时会和某些库(比如后面可能用到的CUDA,如果你做GPU加速的话)产生兼容性问题。我们可以先按默认的装,后面遇到问题再针对性降级,这样思路更清晰。
2. 依赖库全攻略:逐个击破第三方组件
openMVS不是一个孤立的软件,它站在很多“巨人”的肩膀上。这些“巨人”就是各种第三方库,比如处理矩阵运算的Eigen、提供基础数据结构和算法的Boost、负责图像读写的OpenCV等等。安装它们就像拼乐高,一块都不能少,而且顺序和版本还得对。原始文章给出了安装列表,但我想结合我踩过的坑,把每个库的“脾气”和安装要点给你讲透。
首先是最基础的图像库。libpng-dev, libjpeg-dev, l


1295

被折叠的 条评论
为什么被折叠?



