首页 > 解决方案 > 在 Alpine Linux 容器中安装特定的 GCC/G++ 版本

问题描述

我正在尝试设置一个环境来使用一些旧的 gcc 版本编译一个过时的项目,例如,4.8.2在一个 Docker 容器中虚拟化 Alpine Linux。

当我潜入容器 ie 时,docker run -it alpine:latest我尝试apk列出包,但当然我只看到最新版本的gcc/g++.

我以为我可以首先安装一些依赖项,包括最新版本的编译器,然后删除它们,但是当我运行时apk build-base 我不能apk del gcc g++因为

世界已更新,但以下软件包未删除,原因是:gcc: g++ build-base

所以我想我必须手动安装gcc/g++我想要的。有人对如何做到这一点有任何建议吗?例如,我不想更改为 Ubuntu 并在那里解决它[1],而是我想尝试一下 Alpine Linux,因此我坚持使用它。

标签: linuxdockergccg++alpine

解决方案


如果您希望使用旧版本的 GCC,您可以从GCC 4.8.0下载源代码 ,然后从源代码构建 gcc。

您可以将所有命令作为 Dockerfile 的一部分提供,然后使用所需的 GCC 构建 alpine 映像。如果你不想创建镜像,你可以简单地按照上面提到的步骤在 alpine 容器中构建 gcc。


推荐阅读