How to install python3-devel on red hat 7
Asked Answered
L

3

47

I am trying to install something in my virtual environment, which uses anaconda python 3.6. I get the gcc failed with exit status 1, hinting on the absence of the right python3-devel package, as described in error: command 'gcc' failed with exit status 1 while installing eventlet.

To fix the error, I tried to install the python3-devel package on my server running RHEL 7.3. I did yum install python3-devel, but got a 'package not found' error. Then I found https://serverfault.com/questions/710354/repository-for-python3-devel-on-centos-7, which hints to the python34-devel package in the EPEL repository. I installed it using yum, but upon trying to install something in my virtual environment, I still get the gcc failed with exit status 1 error.

Does someone know how I can fix this? All help would be much apprechiated.

Liaotung answered 27/3, 2017 at 13:4 Comment(5)
"gcc failed with exit status 1" is the symptom, not the cause.Nasion
Hey, thanks for your reply. As I describe in my post, I believe the cause to be the absence of the python3-devel package.Liaotung
Okay, but nothing in the question backs that up.Nasion
True, added my source.Liaotung
As a sidenote, I would recommend Red Hat Software Collections for installing Python3 instead of EPEL -- you get official support with that. See access.redhat.com/solutions/472793Jamilajamill
I
126

Search for the package in yum , use the following command:

yum search python3 | grep devel

It will list all the available devel packages. The result will be somewhat like this

python3-cairo-devel.x86_64 : Libraries and headers for python3-cairo
python3-devel.x86_64 : Libraries and header files needed for Python 3
                     : development
python34-devel.x86_64 : Libraries and header files needed for Python 3
                      : development

Then you can choose the package you want to install from the list , suppose if you want to to install python3-devel , execute the following

yum install -y python3-devel.x86_64
Immortal answered 2/4, 2017 at 5:53 Comment(4)
# yum search python3 // Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager // Warning: No matches found for: python3 No matches found -- couldn't find it on my systemCystitis
I want to give you 2 points but SO won't let me ... thanks man ... this is BY FAR the most straight forward answerLorola
The above did not work for me, probably because I did not have repositories setup, so I found this here which worked:draculaservers.com/tutorials/install-python-3-centos-7 Or just this---------------------------------------- sudo yum install centos-release-scl sudo yum install rh-python36 scl enable rh-python36 bash python --versionCongeries
Which repo is python3-devel found? I have base, extras, epel and ius configured and it is not found. Pip search can't find it. I can only seem to find it on rpmfind.net and that is a source rpm.Sibella
P
14

I thought I might update this for 2020. As of RHEL 7.7, python-devel is not available in EPEL, it has been retired by Fedora Project. All I wanted for today was the python h files, and this got me there:

# yum install python3-devel.x86_64 --enablerepo=rhel-7-server-optional-rpms

We do have one of the Redhat No-Cost Developer licenses, but I am not sure that is required for the optional-rpms.

PS, this was helpful in verifying which packages of interest were in optional-rpms

# yum repo-pkgs rhel-7-server-optional-rpms list | grep python3
Plebiscite answered 4/9, 2020 at 1:30 Comment(0)
V
13

There are no python3-* packages from Red Hat in Red Hat Enterprise Linux 6 or 7.

However there are python3-* packages available if you enable third party repos like EPEL or IUS. But, these are not supported by Red Hat. Chances are if you are running RHEL, your organization has a preference for supported packages.

You can get supported Python 3 packages from Red Hat via Red Hat Software Collections (RHSCL). Currently Python 3.6 is the newest available, the package name is rh-python36. Installing the RHSCL package will also install rh-python36-devel and a number of other packages.

See How to install Python 3, pip, venv, virtualenv, and pipenv on RHEL

Don't forget to install @development first, so you have gcc, make, etc. for building any dynamically loaded shared objects.

To install:

$ su -
# subscription-manager repos --enable rhel-7-server-optional-rpms \
  --enable rhel-server-rhscl-7-rpms
# yum -y install @development
# yum -y install rh-python36

# yum -y install rh-python36-numpy \
 rh-python36-scipy \ 
 rh-python36-python-tools \
 rh-python36-python-six

# exit

The blog linked above has lots of tips for working with Python, virtual environments, as well as software collections on Red Hat.

Varletry answered 20/9, 2018 at 14:27 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.