centos安装开发包(centos安装软件)
今天给各位分享centos安装开发包的知识,其中也会对centos安装软件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
redhat跟centOS的区别
首先因为Redhat是基于Linux内核的,Linux本身就是开源的,根据Linux内核遵循GPL v2协议的规定,Redhat系统必须开源它的源码,事实上Redhat的编译版本和源码都是可以免费下载的。所以有人就下载了Redhat的源码,把Redhat的logo之类的标志、版本信息去掉后,自己编译成一个系统,并上传到网上供大家下载使用,后来成立了一个组织专门做优化这个自己编译的操作系统,并把这个系统叫做:Community enterprise operating system,取第一个单词的首字母C和第二个单词的前三个字母ent,简称Cent操作系统,而我们知道操作系统一般都用OS做简称,故这个系统叫:CentOS,它的本意就是“社区版企业操作系统”,就是网上社区的成员拿红帽的代码编译的。
所以,CentOS其实就是Redhat,可以说它们没有区别,唯一的区别是CentOS去掉了Redhat的商标(logo)之类的版权信息,另外,编译的时候,因为社区是民间组织,我们常说高人在民间,所以CentOS社区的人在编译Redhat源码时可能发现了一些错误,他们会对这些错误进行修正。
有人可能会觉得奇怪,Redhat公司的人这么辛苦写出来的源码,却还必须遵守GPL协议免费公开发到网上供大家下载使用,那Redhat还怎么赚钱?答案是,Redhat系统本身也是免费的,它的系统根本就不要钱,要钱的是“服务”和“商业授权费”,当公司使用Redhat系统(也就Redhat for Enterprise Linux,即红帽企业操作系统)时,你必须给Redhat公司交“授权费”,个人使用没人管你,因为它的系统你随时可以免费下载,但是公司使用它时,如果被它发现了你没有给授权费,就会被起诉赔钱,另外就是你可以使用Redhat的“服务”,服务器出问题他们的专业人员可以帮你处理,这也是收费的。
又有人可能会觉得很奇怪,既然RHEL系统免费让你下,源码也免费让你下,但为什么你用RHEL系统就要授权费?因为RHEL系统是Redhat公司开发的,人家有版权,但你交了授权费之后,如果系统出现什么大的问题,Redhat公司应该也是要赔你公司钱的,你可以选择不用RHEL系统,而是用CentOS系统,因为根据前面所说,CentOS其实就是Redhat系统嘛,只不过去掉了Redhat版权信息,改成了CentOS,而CentOS是社区版,是免费的。但是由于CentOS是免费的,如果你使用CentOS有什么重大问题造成公司有重大损失,CentOS是不会赔你钱的,因为CentOS本身并不是公司,而是一个民间组织,它们的存在,实际上就是因为有很多人认为自己技术够牛,不需要Redhat公司来做技术支持,也不想花钱买RHEL系统的使用授权,所以他们自己使用Redhat的源码编译出来CentOS,并且由于代码不是他们自己写的,所以他们不能对CentOS收费,因为他们本身就是为了不使用收费的RHEL才自己编译的CentOS,所以他们自然也不会去收费(也无权收费),但因为他们不收费,所以也不需要对使用者负责,也就是说使用者因为CentOS出什么问题对公司造成损失,他们是不需要负责的,你既然想省钱就别怕出事。
然而CentOS实际上是比较稳定的,也不会出什么事,所以目前国内绝大部分互联网公司都使用CentOS系统,但也有使用Ubuntu的,国外用Ubuntu的更多,全世界用Ubuntu做服务器的比用CentOS的多,但在中国用Ubuntu的比用CentOS的少,原因可能是因为中国最早那批会Linux的人都学的红帽(Redhat)系统,他们教出来的人自然也都是用红帽的,而CentOS其实就是红帽,用法肯定也基本上一样,所以大家相互学的都是这个系统的相关知识,导致国内大部分互联网公司都用CentOS做服务器。
CentOS 7中安装Nvidia GTX1080显卡驱动教程
废话不多说了,直接说安装步骤和遇到的问题:
一:首先当然是要把驱动下载下来啦。
我的电脑是NVIDIA的,所以自然先要访问其官网:
根据你自己的显卡型号,选择相应的显卡,进行下载勒,下载下来的是一个.run的文件。
二:OK,接下来就是安装编译环境:gcc、kernel-devel、kernel-headers(当然,如果你的电脑已经安装了,自然就不用在装了)
1
2
# yum-y install gcc kernel-devel"kernel-devel-uname-r==$(uname-r)" dkms
"kernel-devel-uname-r==$(uname-r)"
可以确保安装与当前运行内核版本一样的kernel-header
三:修改/etc/modprobe.d/blacklist.conf文件,以阻止 nouveau模块的加载
方法:添加blacklist nouveau,注释掉blacklist nvidiafb(如果存在)
blacklist.conf不存在时,执行下面的脚本
1
# echo-e"blacklist nouveau\noptions nouveau modeset=0"/etc/modprobe.d/blacklist.conf
四:重新建立initramfs image文件
1
2
# mv/boot/initramfs-$(uname-r).img/boot/initramfs-$(uname-r).img.bak
# dracut/boot/initramfs-$(uname-r).img$(uname-r)
五:执行以下安装脚本
1
./NVIDIA-Linux-x86_64-375.39.run--kernel-source-path=/usr/src/kernels/3.10.0-514.el7.x86_64-k$(uname-r)--dkms-s
遇到的问题:
ERROR: Unable to load the kernel module'nvidia.ko'.
原因是内核默认开启了nouveau模块,如果没有执行第三步会报该错误
Unable to load the'nvidia-drm' module
没有安装dkms模块导致
Your kernel headers for kernel 3.10.0-229.el7.x86_64 cannot be found
原因是找不到与内核匹配的kernel-header库文件,执行
yum install-y"kernel-devel-uname-r==$(uname-r)"即可
其他注意事项:
--dkms可以将Nvidia模块编译进内核默认加载模块,以后升级内核时不需要重新重新安装驱动
-s选项是silence模式安装,去掉-s是交互式模式安装
下面是其他网友的补充
思路:
1、去nvidia官网下载显卡驱动,驱动的后缀名为".run",需要注意的是显卡系列名称+位数
2、打开terminal终端,输入命令"init 3"切换到文本界面
3、安装过程
#cd进显卡驱动下载的目录
#chmod a+x驱动名
#sh驱动名
4、发现报错无编译器,干脆去把开发工具包安装
#yum groupinstall-y Development-Tool
重复安装步骤提示找不到kernel-source,提示指定kernel的路径
#sh驱动名--kernel-source-path=kernel路径(我的是/usr/src/kernels/核心号/)
centos7怎么编译安装gcc-c++
方法/步骤
1
yum install glibc-static libstdc++-static-y
安装c和c++的静态库(据说如果系统中缺少libc.a和libstdc++.a编译时会出错,但是我没有那么多闲情逸致去试,实践过的朋友可以回复一下,分享一下经验,让大家都长长见识)
2
下载解压gcc,我的gcc目录是gcc-4.8.0
3
进入gcc目录,执行:
./contrib/download_prerequisites
这个神奇的脚本文件会帮我们下载、配置、安装那三个依赖的库。可以节约我们大量的时间和精力。
4
你以为这三个库自动下载了、自动make install了就没事了吗?错!
很多人在编译gcc的时候出现各种奇奇怪怪的错误就是这步没有做好。
它们还不在.so文件的搜索路径里面,需要加进去,最后切记切记一定要执行一下ldconfig。
大致做法为:
1,找到你的共享库文件被install到哪个目录了(updatedb+locate命令)。
2,如果你的库不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享库的路径
3,如果在2中添加了共享库路径,切记要执行一下ldconfig,更新响应cache文件让系统能找到你的共享库。
5
建立临时目录,这个目录用以存放编译时的大量临时文件,是文档要求中必须的。
我是在gcc-4.8.0下建立了一个名为gcc-build-4.8.0的目录,进入它。
mkdir gcc-build-4.8.0
cd gcc-build-4.8.0
配置gcc编译选项
6
强烈建议阅读INSTALL目录下的说明文档,尤其是configure.html,以确定你的编译选项。
比较基本的选项有--enable-languages,说明你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查。
网上还说了什么--with-gmp、--with-mpfr、--with-mpc这三个选项,但是如果你3,4步做好了,就不要配了,反之你还是老实点吧别抱侥幸心理了。
调用gcc-4.8.0目录下的configure文件:
例如:
../configure--enable-checking=release--enable-languages=c,c++--disable-multilib
7
执行
../make#不解释
执行编译命令(#在8核的虚拟机上进行编译,每个核分配2个编译任务)
make-j16
make install编译过程CPU核基本100%占用,整个编译用时11分50秒。
检查gcc版本
#你就等吧少年,建议晚上睡觉前做
当然上面三步一定要在前一步顺利结束的情况下进行,如果哪一步出错了,结果都显示error了,就不要再做后面的了。在shell的输出里搜索"error"看具体的出错点是什么,baidu、google一下为什么。
如果你求稳的话,可以在make install之前先make check一下。