glibc簡介:
glibc是
GNU發布的libc庫,即c
運行庫。glibc是
linux系統中最底層的
api,幾乎其它任何運行庫都會依賴於glibc。glibc除了封裝
linux操作系統所提供的
系統服務外,它本身也提供了許多其它一些必要功能服務的實現。由於 glibc 囊括了幾乎所有的
UNIX 通行的標准,可以想見其內容包羅萬象。而就像其他的 UNIX 系統一樣,其內含的檔案群分散於系統的樹狀
目錄結構中,像一個支架一般撐起整個操作系統。在 GNU/Linux 系統中,其C函式庫發展史點出了GNU/Linux 演進的幾個重要里程碑,用 glibc 作為系統的C函式庫,是GNU/Linux演進的一個重要里程碑。
glibc是一種按照
LGPL許可協議發布的,自由的,公開
源代碼的,方便從網絡下載的C的編譯程序。GNU C運行期庫,是一種C函數庫,是程序運行時使用到的一些
API集合,它們一般是已預先
編譯好,以
二進制代碼形式存在
Linux類系統中,GNU C運行期庫通常作為GNU C編譯程序的一個部分發布。
出現問題
在Centos6安裝mysql 5.7.x 系列提示錯誤如下:
[root@VM_0_5_centos mysql]# rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm warning: mysql-community-libs-5.7.17-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: libc.so.6(GLIBC_2.14)(64bit) is needed by mysql-community-libs-5.7.17-1.el7.x86_64 [root@VM_0_5_centos mysql]#
需要安裝一下libc.so.6(GLIBC_2.14)(64bit)
查看已安裝的 gblic 版本
strings /lib64/libc.so.6 | grep GLIBC
執行如下:
[root@VM_0_5_centos glibc-2.14]# strings /lib64/libc.so.6 | grep GLIBC GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_2.3.4 GLIBC_2.4 GLIBC_2.5 GLIBC_2.6 GLIBC_2.7 GLIBC_2.8 GLIBC_2.9 GLIBC_2.10 GLIBC_2.11 GLIBC_2.12 GLIBC_PRIVATE [root@VM_0_5_centos glibc-2.14]#
使用yum更新安裝依賴
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y
下載rpm包
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-utils-2.17-55.el6.x86_64.rpm & wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-static-2.17-55.el6.x86_64.rpm & wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-2.17-55.el6.x86_64.rpm & wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-common-2.17-55.el6.x86_64.rpm & wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-devel-2.17-55.el6.x86_64.rpm & wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-headers-2.17-55.el6.x86_64.rpm & wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/nscd-2.17-55.el6.x86_64.rpm &
下載好后,安裝包如下:
[root@VM_0_5_centos glibc-2.17]# ls -ll -h total 22M -rw-r--r-- 1 root root 4.0M Feb 17 2015 glibc-2.17-55.el6.x86_64.rpm -rw-r--r-- 1 root root 14M Feb 17 2015 glibc-common-2.17-55.el6.x86_64.rpm -rw-r--r-- 1 root root 1020K Feb 17 2015 glibc-devel-2.17-55.el6.x86_64.rpm -rw-r--r-- 1 root root 663K Feb 17 2015 glibc-headers-2.17-55.el6.x86_64.rpm -rw-r--r-- 1 root root 1.7M Feb 17 2015 glibc-static-2.17-55.el6.x86_64.rpm -rw-r--r-- 1 root root 193K Feb 17 2015 glibc-utils-2.17-55.el6.x86_64.rpm -rw-r--r-- 1 root root 250K Feb 17 2015 nscd-2.17-55.el6.x86_64.rpm [root@VM_0_5_centos glibc-2.17]#
安裝rpm包
sudo rpm -Uvh *-2.17-55.el6.x86_64.rpm --force --nodeps
安裝完畢后,再次查看版本
[root@VM_0_5_centos glibc-2.17]# strings /lib64/libc.so.6 | grep GLIBC GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_2.3.4 GLIBC_2.4 GLIBC_2.5 GLIBC_2.6 GLIBC_2.7 GLIBC_2.8 GLIBC_2.9 GLIBC_2.10 GLIBC_2.11 GLIBC_2.12 GLIBC_2.13 GLIBC_2.14 GLIBC_2.15 GLIBC_2.16 GLIBC_2.17 GLIBC_PRIVATE
可以看到一次性增加了 13 到 17 的版本號。