Linux开发环境——SCL软件集

一、SCL简介

1、SCL简介

SCL(Software Collections)是一个CentOS/RHEL Linux平台的软件多版本共存解决方案,为RHEL/CentOS  Linux用户提供一种方便、安全地安装和使用应用程序和运行时环境的多个版本的方式,同时避免把系统搞乱。

CentOS/RHEL Linux发行版以稳定性著称,所有的软件都要尽可能stable,导致基础软件的版本非常低,如CentOS 6.7(2015年发布)中gcc版本是4.4.7(2012年版本)。但工程开发中,通常需要高版本的GCC支持,因此需要在CentOS/RHEL Linux开发服务器部署高版本GCC。

SCL项目主页:https://www.softwarecollections.org

2、CentOS源支持

下载源仓库文件Centos-7.repo至/etc/yum.repos.d:

CentOS-SCLo-scl.repo如下:

[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://mirrors.aliyun.com/centos/7/sclo/$basearch/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

更新仓库:

yum clean all

yum makecache

sudo yum update

3、SCL源安装

yum install centos-release-scl scl-utils-build

CentOS6/7安装SCL源

yum-config-manager --enable rhel-server-rhscl-6-rpms

RHEL6安装SCL源

yum-config-manager --enable rhel-server-rhscl-7-rpms

RHEL7安装SCL源

4、SCL软件集查看

yum list all --enablerepo='centos-sclo-rh'

查询SCL支持的软件集合

SCL软件集包含软件包数量众多,可以选择安装指定RPM包,也可以全部安装。

二、SCL使用

1、查看已安装SCL软件集

scl --list

查询已安装SCL软件集

scl --list SCL_NAME

查询指定SCL软件集已安装的RPM包

2、SCL软件集安装

yum install SCL_NAME

安装指定SCL软件集

yum install devtoolset-7-gcc.x86_64  devtoolset-7-gcc-c++.x86_64 devtoolset-7-gcc-gdb-plugin.x86_64

安装SCL软件集的指定RPM包。

yum list SCL_NAME\*

查询指定软件集中的RPM包

3、卸载指定SCL软件集

yum remove SCL_NAME\*

卸载指定SCL软件集

4、执行应用程序

scl enable SCL_NAME_1 SCL_NAME_2 command

激活SCL软件集,直接执行不带参数命令

scl enable SCL_NAME_1 SCL_NAME_2 'command --argument'

scl enable SCL_NAME_1 SCL_NAME_2 "command --argument"

scl enable SCL_NAME_1 SCL_NAME_2 -- command --argument

激活SCL软件集,执行带参数命令

scl enable devtoolset-7 "gcc --version"

scl enable devtoolset-7 -- gcc --version

激活devtoolset-7软件集,查看gcc版本

5、创建SCL软件集Shell环境

scl enable SCL_NAME_1 SCL_NAME_2 bash

在当前shell环境下新建一个shell并激活一个或多个SCL

echo $X_SCLS

在SCL shell环境查看已激活的SCL

exit

退出SCL软件集Shell环境

scl enable devtoolset-7 bash

创建devtoolset-7软件集的bash环境

6、批量执行文件中命令

cat cmd_file | scl enable SCL_NAME_1 SCL_NAME_2 -

执行文件中命令

7、激活SCL软件集

source /opt/rh/SCL_NAME/enable

在当前Shell激活指定SCL软件集

三、SCL常用软件集

1、Developer Toolset

Developer Toolset是为CentOS和REHL Linux平台开发者设计的开发工具集,提供GCC工具集、GNU Debugger以及其它开发、调试、性能测试工具的不同版本。

Developer Toolset 3、Developer Toolset 4、Developer Toolset 6已经废弃。

Developer Toolset 7对应GCC 7版本

yum install devtoolset-7

Developer Toolset 8对应GCC 8版本

yum install devtoolset-8

CentOS7/RHEL7系统中Developer Toolset 7的Docker容器支持如下:

docker pull

registry.access.redhat.com/rhscl/devtoolset-7-perftools-rhel7

docker pull

registry.access.redhat.com/rhscl/devtoolset-7-toolchain-rhel7

docker pull centos/devtoolset-7-perftools-centos7

docker pull centos/devtoolset-7-toolchain-centos7

2、Clang and LLVM Toolset

Clang and LLVM Toolset是为CentOS和REHL Linux平台开发者设计的开发工具集,提供LLVM编译器基础设施、C/C++语言Clang编译器、LLDB调试器、代码分析相关工具。

yum install llvm-toolset-7.0

安装Clang and LLVM Toolset

scl enable llvm-toolset-7.0 bash

激活Clang and LLVM Toolset并创建Shell

docker pull

registry.access.redhat.com/devtools/llvm-toolset-7.0-rhel7

RHEL7中Clang and LLVM Toolset的Docker镜像下载

3、Go Toolset

Go Toolset是为CentOS和REHL Linux平台开发者设计的开发工具集,提供Golang编程语言库和工具。

yum install go-toolset-7

安装Go Toolset

scl enable go-toolset-7 bash

激活Go Toolset并创建Shell环境

docker pull

registry.access.redhat.com/devtools/go-toolset-7-rhel7

RHEL7中Go Toolset的Docker镜像下载

4、Python软件集

SCL中,Python软件集包括Python27、Python33、Python34、Python35、Python36五个版本,相应的SCL软件集名称为python27、python33、rh-python34、rh-python35、rh-python36。

rh-python36包含Python3.6解释器、Web编程扩展库、mod_wsgi、PostgreSQL数据库接口库、numpy、scipy。

yum install rh-python36

安装rh-python36

scl enable rh-python36 bash

激活rh-python36并创建Shell环境

5、Redis软件集

Redis软件集有Redis3.2和Redis5.0两个版本,SCL名称分别为rh-redis32和rh-redis5。

yum install rh-redis5

安装rh-redis5

scl enable rh-redis5 bash

激活rh-redis5并创建Shell环境

service rh-redis5-redis start

启动rh-redis5服务

6、MySQL

MySQL软件集有MySQL5.5、MySQL5.6、MySQL5.7、MySQL8.0四个版本,SCL名称分别为rh-mysql55、rh-mysql56、rh-mysql57、rh-mysql80。

yum install rh-mysql80

安装rh-mysql80

scl enable rh-mysql80 bash

激活rh-mysql80并创建Shell环境

systemctl start rh-mysql80-mysqld

启动MySQL数据库服务

四、多版本GCC部署

1、GCC 7.3部署

yum install devtoolset-7

安装Developer ToolSet 7软件集

scl enable devtoolset-7 bash

激活Developer Toolset 7软件集,并创建Shell

2、GCC 8.3部署

yum install devtoolset-8

安装Developer Toolset 8软件集

scl enable devtoolset-8 bash

激活Developer Toolset 8软件集,并创建Shell环境

五、多版本Python部署

1、Python2.7部署

sudo yum install python27

安装SCL Python3软件包

scl enable python27 bash

开启Python2.7 Shell会话环境

python --version

Python版本查看

2、Python3.6部署

sudo yum install rh-python36

安装SCL Python3软件包

scl enable rh-python36 bash

开启Python3 Shell会话环境

python --version

Python版本查看

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值