在Ubuntu新版本安装gcc4.8等老版本环境

在开发需要用gcc-4.8 g++-4.8的开发包,不过新版本的ubuntu,gcc等版本已经是14+,在Ubuntu 18.04+官方源已经彻底移除,强行安装也可能污染宿主机。

于是考虑用docker安装,用Ubuntu 16.04 + gcc-4.8是稳定选择。

由于复用、或者放到 CI/CD,使用Dockerfile如下:

复制代码
FROM ccr.ccs.tencentyun.com/library/ubuntu:16.04

RUN sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list \
 && sed -i 's/security.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list \
 && apt update \
 && apt install -y gcc-4.8 g++-4.8 \
 && rm -rf /var/lib/apt/lists/*

RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100 \
 && update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 100

CMD ["/bin/bash"]

如果你想让它像虚拟机一样一直存在:

复制代码
docker run -dit  --name gcc48  ubuntu-gcc48  tail -f /dev/null

如果需要映射目录到宿主机,使用如下:

复制代码
docker run -dit \
  --name gcc48 \
  -v /home/devops/gcc48:/workspace \
  ubuntu-gcc48 \
  tail -f /dev/null

进入容器:

复制代码
docker exec -it gcc48 /bin/bash
相关推荐
酸菜。2 小时前
dw_axi_dmac总结
linux
神奇霸王龙2 小时前
Agent 准入门控屠夫:5 旗舰 4 维度评估
linux·运维·数据库·ai·ai作画·agent·ai编程
cfm_29142 小时前
基于Binlog实现不停机数据库平滑迁移技术
运维·数据库·架构
迪康Defender2 小时前
AI 重构终端安全运营:智能分析中枢 AI Insight 模块架构与落地场景深度解析
运维·网络·人工智能·其他·安全·重构·架构
HiDev_4 小时前
【非标自动化】2、认识元器件(固态继电器)
运维·自动化
明达智控技术4 小时前
国产 PLC 落地立库自动化,MC5000边缘智能控制器破局
运维·自动化
小绫网络安全4 小时前
Kali Linux渗透测试入门教程:从零搭建到实战攻防
linux·运维·服务器
西安景驰电子4 小时前
《PTP精确时间协议系列》第一篇:从原理到应用,全面解读IEEE 1588
linux·运维·服务器·开发语言·网络·windows·php
猫吃了源码5 小时前
k9s简介和安装
linux·docker·kubernetes
云原生指北6 小时前
Docker Sandboxes 上手:从安装到第一次跑 Agent
运维·docker·容器