command ‘x86_64-linux-gnu-gcc’ failed with exit status 1
command ‘x86_64-linux-gnu-gcc’ failed with exit status 1
command ‘x86_64-linux-gnu-gcc’ failed with exit status 1
在公司的新机器上装一个需要编译的库的时候,报错了,直接百度到解决方法
sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev
说是缺少库,但是真的不建议直接这么一通乱装,装完可能会导致一些库和现有的程序有版本上的冲突。
又百度了一波:主要是机器是新的,linux中的一些头文件没有,x86_64-linux-gnu-gcc就是一个。
先装python3.x-dev就完事了(x是对应你自己的python版本哦。)
python3.x-dev和我现有的python是什么关系呢?
linux发行版通常会把类库的头文件和相关的pkg-config分拆成一个单独的xxx-dev(el)包.
以python为例, 以下情况你是需要python-dev的
你需要自己安装一个源外的python类库, 而这个类库内含需要编译的调用python api的c/c++文件
你自己写的一个程序编译需要链接libpythonXX.(a|so)
(注:以上不含使用ctypes/ffi或者裸dlsym方式直接调用libpython.so)
其他正常使用python或者通过安装源内的python类库的不需要python-dev.(我这时候编译c/c++文件就需要啦)
python-dev的包在centos的yum中不叫python-dev,而是python-devel.
yum install python-devel -y
1.python-dev或python-devel
python-dev或python-devel称为是python的开发包,
其中包括了一些用C/Java/C#等编写的python扩展在编译的时候依赖的头文件等信息。
比如我们在编译一个用C语言编写的python扩展模块时,因为里面会有#include<Python.h>等这样的语句,因此我们就需要先安装python-devel开发包。
2.各种.devel开发包*
linux编程中,还会遇到各种*-devel开发包,例如mysql-devel、libgtk±devel等等。
-devel开发包中主要包括一些头文件和静态链接库。任何-devel包基本都是这样。
备注:
注意python-dev或者其他*.devel软件一般都是C语言编写的一些头文件或cpp文件,
往往是其他模块或这我们自己写的模块在编译时,需要依赖这些*-devel软件包
部分文章出处:找不到源头····
看似缺少gcc组件,但是确实在安装之前有执行过yum安装gcc,但是还是有这样的问题,于是找呀找看到有网友提到缺少openssl-devel支持。
python2安装命令:
yum install gcc libffi-devel python-devel openssl-devel -y
python3安装命令:
yum install gcc libffi-devel python3-devel openssl-devel -y
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)