1. 程式人生 > >幾種常用庫在CentOS下的編譯

幾種常用庫在CentOS下的編譯

1操作環境

  通過命令檢視作業系統版本資訊:

[[email protected] ~]# cat /proc/version
Linux version 3.10.0-327.el7.x86_64 ([email protected]) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015

  檢視當前作業系統發行版本資訊:

[[email protected] ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core) 

  我的作業系統上沒有安裝gcc(這是按照我這種辦法來安裝gcc的前提),從作業系統安裝映象中取出需要的rpm包來安裝gcc(此部分轉載自:https://www.cnblogs.com/sybblogs/p/5717392.html),我的作業系統發行版本是CentOS 7.2.1511,從http://vault.centos.org/找到我的對應我的作業系統的映象,所需要的rpm都放在了一個叫做packages的目錄下,最終能取到我所需要的包的完整URL是:http://vault.centos.org/7.2.1511/os/x86_64/Packages/   。這個目錄下有非常多的包,你可以使用快捷鍵Ctrl+F來查詢你需要的包。

  接下里在你的作業系統上建立一個目錄,用來在使用wget命令下載rpm包的時候儲存下載下來的檔案。使用這種方式需要如下包:

mpfr-3.1.1-4.el7.x86_64.rpm
libmpc-1.0.1-3.el7.x86_64.rpm
kernel-headers-3.10.0-327.el7.x86_64.rpm
glibc-headers-2.17-105.el7.x86_64.rpm
glibc-devel-2.17-105.el7.x86_64.rpm
cpp-4.8.5-4.el7.x86_64.rpm
gcc-4.8.5-4.el7.x86_64.rpm
gcc-c++-4.8
.5-4.el7.x86_64.rpm

  所有這些包都下載好以後,按照如下順序安裝這些包:

rpm -ivh mpfr-3.1.1-4.el7.x86_64.rpm
rpm -ivh libmpc-1.0.1-3.el7.x86_64.rpm
rpm -ivh kernel-headers-3.10.0-327.el7.x86_64.rpm
rpm -ivh glibc-headers-2.17-105.el7.x86_64.rpm
rpm -ivh glibc-devel-2.17-55.el7.x86_64.rpm
rpm -ivh cpp-4.8.5-4.el7.x86_64.rpm
rpm -ivh gcc-4.8.5-4.el7.x86_64.rpm

  或者也可以如下命令統一安裝:

rpm -Uvh *.rpm --nodeps --force

  安裝結束之後,使用gcc -v 來檢視gcc的版本以及使用g++ --version檢視g++的版本(當然是4.8.5咯)

[[email protected] gcc]# g++ --version
g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
Copyright © 2015 Free Software Foundation, Inc.
本程式是自由軟體;請參看原始碼的版權宣告。本軟體沒有任何擔保;
包括沒有適銷性和某一專用目的下的適用性擔保。

  解除安裝系統自帶的python以及重新安裝。

  解除安裝時依次執行以下幾條命令:

[[email protected] ~]# rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps ##強制刪除已安裝程式及其關聯
[[email protected] ~]# whereis python |xargs rm -frv ##刪除所有殘餘檔案 ##xargs,允許你對輸出執行其他某些命令
[[email protected] ~]# whereis python ##驗證刪除,返回無結果

  建立目錄用以儲存python相關的包:

mkdir /usr/local/src/python

  進入該目錄,並使用wget命令下載如下包:

python-2.7.5-34.el7.x86_64.rpm
python-iniparse-0.4-9.el7.noarch.rpm
python-pycurl-7.19.0-17.el7.x86_64.rpm
python-devel-2.7.5-34.el7.x86_64.rpm
python-libs-2.7.5-34.el7.x86_64.rpm
python-urlgrabber-3.10-7.el7.noarch.rpm
rpm-python-4.11.3-17.el7.x86_64.rpm

  建立目錄儲存yum的相關包:

mkdir /usr/local/src/yum

  使用wget命令下載下列包,儲存到剛建立好的yum目錄下:

yum-3.4.3-132.el7.centos.0.1.noarch.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
yum-plugin-fastestmirror-1.1.31-34.el7.noarch.rpm
(前三個是必須的,大多數帖子上都只有前三個)

  安裝python,yum的安裝依賴python。

  安裝Python的命令:(在目錄/usr/local/src/python  就是剛才儲存了python相關包的目錄,下執行這條命令)

rpm -Uvh --replacepkgs python*.rpm

  安裝結束後,在終端輸入python,即可看到python的版本資訊。

  安裝Yum的命令:(把剛才下載好的yum相關的包也移動到/usr/local/src/python目錄下,然後再執行這條指令):

rpm -Uvh --replacepkgs rpm-python*.rpm yum*.rpm

  OK,至此,yum就安裝完成了,可以在終端輸入yum來驗證一下。 

注:如果使用wget下載的時候提示域名解析失敗,可以執行命令 vim /etc/resolv.conf(這個是DNS伺服器配置配置檔案) ,在檔案中新增如下幾行:

nameserver 127.0.0.1
nameserver 8.8.8.8
nameserver 114.114.114.114