马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
离线环境下装编译工具链是最让人头疼的场景之一:没有网络,apt 用不了,缺一个依赖就卡死。本文介绍一种把 gcc、make、build-essential 及各自依赖打包好的离线安装方案,说明包里包含哪些内容、按什么顺序装、以及依赖出问题时怎么修。
离线包包含什么
离线包按软件分成三个目录,每个目录里是该软件本体的 deb 文件加依赖项的 deb 文件:
- gcc 目录:gcc 的 deb 文件及其 12 个依赖项。
- make 目录:make 的 deb 文件及其 1 个依赖项。
- build-essential 目录:build-essential 的 deb 文件及其 7 个依赖项(不含 build-essential 自身)。
这套资源适用于内网、航空盘装系统等完全断网环境里安装基础编译环境,一次拷过去,不用反复找包。
安装步骤
把离线包拷到目标机器后解压,按 gcc、make、build-essential 的顺序依次进入目录安装:
cd gcc
sudo dpkg -i *.deb
cd ../make
sudo dpkg -i *.deb
cd ../build-essential
sudo dpkg -i *.deb
为什么顺序不能乱
dpkg 只负责解包安装,不解依赖。如果先装 build-essential,它依赖的 gcc 与 make 还没进系统,dpkg 会直接报依赖错误并中断。按 gcc 到 make 到 build-essential 的次序走,后面的包装的时候前面的已经到位,一气呵成。
依赖出问题时怎么修
即便按序安装,个别情况下仍会提示依赖不满足。这时用系统自带的依赖修复命令就能补上:
sudo apt-get install -f
它在有网环境会自动拉缺失依赖,离线环境下也能把本地已缓存的包补进依赖关系里。修复完再重跑一次对应目录的 dpkg 命令即可。
验证是否装好
依次执行下面三条,能输出版本信息说明编译环境已经可用:
gcc --version
make --version
dpkg -l build-essential
接着写一个 hello world 用 gcc 编译一次,是判断工具链是否真正可用的最直接方式。离线包方案的好处是把不确定性前置解决掉,现场只需要按顺序敲命令,不必再猜测每个依赖该从哪下载。
qidao123.com企服评测-应用市场 编辑提示 |