计算化学公社

标题: CentOS8.1上使用python故障及解决方案 [打印本页]

作者
Author:
gog    时间: 2020-5-30 23:41
标题: CentOS8.1上使用python故障及解决方案
本帖最后由 gog 于 2020-5-30 23:47 编辑

CentOS8.1 使用的GCC 8.3.1,等。系统流畅程度比7.8版本快了些。还有就是安装了一个杀毒软件也不卡。
只是很闹心,会遇到些麻烦问题,需要逐一解决。比如缺Glu.h。

今天遇到的是Python使用

8.1默认python2.7,可选择python3.6.  而很多软件中,设置的,是查找Python命令。
今个创建了python软链接到python3.6,

编译程序,调用了python命令,就提示
fatal error: Python.h: No such file or directory。
尝试
dnf --enablerepo=PowerTools -y install python-dev,
不管用

请求高手们支个招!


作者
Author:
fhh2626    时间: 2020-5-30 23:48
sudo yum install python3-devel
你这个安装杀毒软件有点秀啊。。

作者
Author:
Daniel_Arndt    时间: 2020-5-31 02:10
本帖最后由 Daniel_Arndt 于 2020-6-4 05:54 编辑

根据我个人的记忆,CentOS 8里面有python3、python36、python3-devel、python36-devel这几个package。比较有意思的是,有python3-pip,但是没有python36-pip,有python3-nose,但是没有python36-nose。

我记得CentOS 7里面的yum依赖于python 2,所以说强行卸载操作系统自带的python(版本为2.7.5)很可能带来问题,在CentOS 7里面把python指向python3也很有可能出问题。我使用CentOS 7时,使用了centos-release-scl-rh源提供的rh-python36、rh-python36-python-pip、rh-python36-python-nose。我当时创建了一个名为env_python3.6的文件夹,里面有四个软链接:python3、pip、pip3、nosetests。python3指向/opt/rh/rh-python36/root/usr/bin/python3.6,pip和pip3均指向/opt/rh/rh-python36/root/usr/bin/pip3.6,nosetests指向/opt/rh/rh-python36/root/usr/bin/nosetests。我要用python 3.6时,是运行的“PATH=$HOME/bin/env_python3.6:$PATH python3”。

我建议的解决方案是这样的。我知道CentOS 8现在改用dnf了,但我不确定CentOS 8的yum是不是依赖于python 2。如果CentOS 8的yum依赖于python 2的话,建议你把软链接的名字由“python”改成“python3”。CentOS 8确实有缺package的时候,你可以用一个粗略的名字去 https://rpmfind.net/ 上搜索,搜索到的结果里面,你找出“Distribution”为“Fedora”或者“EPEL”的,然后下载。下载下来的包,你可以用“rpm -qpR”查看依赖,如果没有什么依赖问题的话,就可以用“yum localinstall”安装。
作者
Author:
gog    时间: 2020-5-31 08:32
Daniel_Arndt 发表于 2020-5-31 02:10
根据我个人的记忆,CentOS 8里面有python3、python36、pytho3-devel、python36-devel这几个package。比较有 ...

路径见附件或者附图

作者
Author:
gog    时间: 2020-5-31 08:35
Daniel_Arndt 发表于 2020-5-31 02:10
根据我个人的记忆,CentOS 8里面有python3、python36、pytho3-devel、python36-devel这几个package。比较有 ...

软件默认调用 python。系统库中,默认只有python2和python36.
yum -y install python
Repository AppStream is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository PowerTools is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
CentOS-8 - AppStream                            6.0 kB/s | 4.3 kB     00:00   
CentOS-8 - Base - mirrors.aliyun.com            761  B/s | 3.9 kB     00:05   
CentOS-8 - Extras - mirrors.aliyun.com          5.1 kB/s | 1.5 kB     00:00   
Extra Packages for Enterprise Linux Modular 8 -  15 kB/s | 8.7 kB     00:00   
Extra Packages for Enterprise Linux 8 - x86_64   11 kB/s | 9.4 kB     00:00   
TeamViewer - x86_64                             1.9 kB/s | 2.5 kB     00:01   
No match for argument: python
There are following alternatives for "python": python2, python36
Error: Unable to find a match: python

作者
Author:
Daniel_Arndt    时间: 2020-6-4 07:03
gog 发表于 2020-5-31 08:35
软件默认调用 python。系统库中,默认只有python2和python36.
yum -y install python
Repository AppSt ...

我看见你截图里面的python指向的是python2,我感觉这应该没什么问题啊。

我用了PowerTools。我刚刚去我的虚拟机里面看了一下,有python2、python2-devel、python36、python36-devel这几个包。你先试试看装一下python36-devel,如果你是想用python3时遇上了“fatal error: Python.h: No such file or directory”这个错误的话。
作者
Author:
chrinide    时间: 2020-6-4 08:15
直接上 Anaconda或者Miniconda ?
作者
Author:
abin    时间: 2020-6-4 09:16
chrinide 发表于 2020-6-4 08:15
直接上 Anaconda或者Miniconda ?

This is the right solution.
作者
Author:
abin    时间: 2020-6-4 09:47
顺路评价一下啊,
直接把系统中的python2链接到python3, 但是又没有处理其他的Lib之类的,
就如同,把220V的交流电,直接插到手机上进行充电。

运气不好的时候,如此链接后,你会发现,dnf/yum就挂了。


作者
Author:
gog    时间: 2020-6-5 10:22
这个主意到不错。
作者
Author:
huozhong    时间: 2020-7-8 23:27
大神,看不懂。。。
作者
Author:
gog    时间: 2020-7-15 17:25
huozhong 发表于 2020-7-8 23:27
大神,看不懂。。。

慢慢来吧。我也不是很明白。




欢迎光临 计算化学公社 (http://ccc.keinsci.com/) Powered by Discuz! X3.3