文档章节

glibc的安装编译 --完整处理问题版

oiio
 oiio
发布于 2013/09/17 00:04
字数 487
阅读 16546
收藏 5

由于其他软件需要更高级的glibc 所以升级如下:

首先用centos的yum升级glibc库

  • yum update glibc

但问题依旧。用命令查看glibc库的信息

  • rpm -qi glibc

显示系统的glibc库版本为2.5

在CentOS中用更新命令到2.5已经是最新版本了,只好手动下载 glibc 2.11的源码包编译安装更新:

地址:http://ftp.gnu.org/pub/gnu/glibc/glibc-2.11.tar.gz


  • cd /usr/src 

  • mkdir glibc-2.11-build 

  • wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.11.tar.gz 

  • tar zxvf glibc-2.11.tar.gz 

  • cd /usr/src/glibc-2.11-build/ 

  • export CFLAGS="-g -O2 -march=i686" 网上有些地方加优化开关 -O2  时(大写字母O),写的是 -02 (数字零),所以拷贝过来仍然出现3中的错误,所以请注意。

  • /usr/src/glibc-2.11/configure --prefix=/usr/src/glibc-2.11-build/ --with-headers=/usr/include

  • make 

  • make install

注意:

1.   在目录usr/src/glibc-2.11执行configure命令时不能执行,需在外部文件夹glibc-2.11-build 执行

2.   加上优化开关,export CFLAGS="-g -O2 -march=i686",否则会出现错误,此处的i686请参照自己的机器

3.    当有如下错误时:

checking whether ranlib is necessary... no
checking LD_LIBRARY_PATH variable... contains current directory
configure: error:
*** LD_LIBRARY_PATH shouldn't contain the current directory when
*** building glibc. Please change the environment variable
*** and run configure again.
解决办法:查看LD_LIBRARY_PATH  echo $LD_LIBRARY_PATH,我的打印的是/usr/lib/qt44/lib:

configure里说:LD_LIBRARY_PATH不能以终结符作为开始和最后一个字符,不能有2个终结符连在一起,所以修改下LD_LIBRARY_PATH即可,export LD_LIBRARY_PATH=/usr/lib/qt44/lib

4.   当有如下错误时:

configure: error: gcc must provide the  header

解决办法:get the cpuid.h file from official GCC respositories> (http://gcc.gnu.org/viewcvs/gcc/tags/GC_4_14/boehm-gc/)> and put it into /usr/include(上面指定的--with-headers)   “locate cpuid”,其中可以发现“/usr/lib/gcc/i686-redhat-linux/4.7.0/include/cpuid.h”。打开该文件

5.   当以上问题都解决时,make  make install吧,由于东西比较多,需要些时间,大概半小时左右。



© 著作权归作者所有

oiio
粉丝 4
博文 58
码字总数 50682
作品 0
东城
程序员
私信 提问
加载中

评论(2)

oiio
oiio 博主

引用来自“吕腾飞”的评论

这个是相当于安装了两个glibc库么

可以先卸载rpm的 不过很久以前的了忘记了 好像装完了就可以用 因为找的路径是 逐个找到的 最新的那个可以被发现
吕腾飞
吕腾飞
这个是相当于安装了两个glibc库么

centos升级glibc至2.18安装wps 2019

官方的glibc源只更新到2.12版,很多业务需要升级到更高级版,这里介绍编译glibc升级的方式。 注意:更新非CentOS官方的glibc后,由于没有经过长时间的测试。所以可能有潜在的风险。 安装gcc...

gugudu
04/28
0
0
如何为嵌入式开发建立交叉编译环境

导读:   未显示需要 JavaScript 的文档选项   级别: 初级   2005 年 9 月 01 日   在进行嵌入式开发之前,首先要建立一个交叉编译环境,这是一套编译器、连接器和libc库等组成的开...

文艺小青年
2017/06/29
0
0
Linux下 升级 glibc的版本

查看 glibc的版本号命令: ldd --version 或 rpm -qi glibc 查看操作系统支持的glibc版本, 64位执行命令 strings /lib64/libc.so.6 grep GLIBC 32位系统 请执行 strings /lib/libc.so.6 gre...

岸芷汀兰
2018/07/09
0
0
(sphinx)解决 `GLIBC_2.14' not found

今天在centos6.5上安装sphinx,结果在启动的时候报错: 看了下系统的glibc只支持到2.12,没办法首先找网上教程,手动在 /usr/local/ 下编译个独立的glibc,千万不要直接替换系统的,否则系统...

吾爱
2016/06/08
30
0
Ubuntu11.04中搭建交叉编译环境(arm-linux-gcc-4.6.1版本)

Ubuntu11.04中搭建交叉编译环境(arm-linux-gcc-4.6.1版本) 声明:本文主要参考http://blog.csdn.net/xtxiaotian/article/details/6836739,并根据实际情况作了一定的修改与说明 编译环境:...

tangming
2012/01/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周四乱弹 —— 如果人生有机会 carl+z

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @巴拉迪维 :How I wish I could choose between Heaven and Hell. How I wish I would save my soul. #今日歌曲推荐# 《Tears And Rain》- J...

小小编辑
47分钟前
197
6
一步步教你怎么用python写贪吃蛇游戏

目录 0 引言 1 环境 2 需求分析 3 代码实现 4 后记 0 引言 前几天,星球有人提到贪吃蛇,一下子就勾起了我的兴趣,毕竟在那个Nokia称霸的年代,这款游戏可是经典中的经典啊!而用Python(蛇)...

上海小胖
今天
4
0
NIO基于长度域的报文在Netty下的解码

1, 先复习一下粘包/拆包 1.1, 粘包/拆包的含义 TCP是个“流”协议, 并不了解上层业务数据的具体含义, 它会根据TCP缓冲区的实际情况进行包的划分,所以在业务上认为,一个完整的包可能会被TCP...

老菜鸟0217
今天
8
0
从零开始搭建spring-cloud(2) ----ribbon

在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的。Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。 其实我们已经在上...

Vincent-Duan
今天
28
0
get和post的区别?

doGet:路径传参。效率高,安全性差(get的传送数据量有限制,不能大于2Kb) doPOST:实体传参。效率低,安全性好 建议: 1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Pos...

花无谢
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部