A RedHat-related Blog for Our Partners
Header

Python 3 in Redhat 7

July 20th, 2016 | Posted by Dorian in Technical News - (0 Comments)

Derzeit ist Python 2.7 immer noch Standard in Red Hat 7 und wird bis zum Ende des Red Hat 7 Live Cycles supported (30. Juni 2024).

Für einige Entwickler ist es aber interessant schon mit einer neueren Version (z.B. Python 3.4) zu testen. Ein Parallelbetrieb von beiden Varianten ist möglich und der Weg dorthin wird im Folgenden beschrieben.

In der RHSCL (Red Hat Software Collection Library) findet man die aktuelle Version, z.B.:

Einbinden der Software Collection Library

Aktivieren der yum-Repositories; die folgenden werden benötigt:

  • rhel-server-rhscl-7-rpms
  • rhel-server-rhscl-7-debug-rpms
  • rhel-server-rhscl-7-source-rpms
  • rhel-server-rhscl-7-eus-rpms
  • rhel-server-rhscl-7-eus-debug-rpms
  • rhel-server-rhscl-7-eus-source-rpms

for i in rhel-server-rhscl-7-rpms rhel-server-rhscl-7-debug-rpms rhel-server-rhscl-7-source-rpms rhel-server-rhscl-7-eus-rpms rhel-server-rhscl-7-eus-debug-rpms rhel-server-rhscl-7-eus-source-rpms
  do subscription-manager repos --enable $i
  done


check ob die Repositories aktiviert sind:

subscription-manager repos| grep -B 3 'Enabled:   1'

----- snip -----
Repo ID: rhel-server-rhscl-7-eus-source-rpms Repo Name: Red Hat Software Collections Source RPMs for Red Hat Enterprise Linux 7 RHEL 7 Server EUS Repo URL: https://cdn.redhat.com/content/eus/rhel/server/7/$releasever/$basearch/rhscl/1/source/SRPMS Enabled: 1 -- Repo ID: rhel-server-rhscl-7-eus-debug-rpms Repo Name: Red Hat Software Collections Debug RPMs for Red Hat Enterprise Linux 7 RHEL 7 Server EUS Repo URL: https://cdn.redhat.com/content/eus/rhel/server/7/$releasever/$basearch/rhscl/1/debug Enabled: 1 --
----- snip -----
yum search python yum -y install rh-python35

Aktivieren der Python 3 Umgebung

bash# scl enable rh-python35 bash
bash# python
[GCC 4.8.3 20140911 (Red Hat 4.8.3-9)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

Testen mit beiden Versionen

scl enable python27 "python script.py"
scl enable python34 "python script.py"