SUSE glibc升级为2.18过程记录
先验知识:
1、运行时,动态库的装载依赖于ld-linux.so.6的实现,它查找共享库的顺序如下:
(1)ld-linux.so.6在可执行的目标文件中被指定,可用readelf命令查看
(2)ld-linux.so.6缺省在/usr/lib和lib中搜索;当glibc安装到/usr/local下时,它查找/usr/local/lib
(3)LD_LIBRARY_PATH环境变量中所设定的路径
(4)/etc/ld.so.conf(或/usr/local/etc/ld.so.conf)中所指定的路径,由ldconfig生成二进制的ld.so.cache中
2、编译时,搜索库的路径顺序如下:
(1)ld-linux.so.6由gcc的spec文件中所设定
(2)gcc --print-search-dirs所打印出的路径,主要是libgcc_s.so等库。可以通过GCC_EXEC_PREFIX来设定
(3)LIBRARY_PATH环境变量中所设定的路径,或编译的命令行中指定的-L/usr/local/lib
(2)binutils中的ld所设定的缺省搜索路径顺序,编译binutils时指定。(可以通过“ld --verbose | grep SEARCH”来查看)
3、二进制程序的搜索路径顺序为PATH环境变量中所设定。一般/usr/local/bin高于/usr/bin
4、编译时的头文件的搜索路径顺序,与library的查找顺序类似。一般/usr/local/include高于/usr/include
先升级了gcc为4.8.2,然后下载2.18的源码安装,源码解压后:
cd glibc-2.18
mkdir build
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make && make install
需要等大概10分钟。
如果configure时候自己指定安装目录会比较麻烦,见后面参考文章,自己就把库搞错了导致linux下所有命令都提示段错误。最后还是重新设置LD LIB变量解决的段错误恢复过来的。(Probably your LD_LIBRARY_PATH includes a dot / .
and that Lib
directory contains standard libraries like libc, so what ever command you issue, system picks a library from that path and something goes wrong.)
[root
@HY
build]# 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.
18
GLIBC_PRIVATE
安装过程遇到的错误解决,因为gcc 4.8.2依赖库的原因需要设置正确的LD LIB变量:
configure: error: cannot compute suffix of object files: cannot compile
解决办法:
我的gmp, mpfr, mpc都是使用默认参数安装的,没指定任何参数
./configure
make
make install
所以直接使用下面的命令设置环境变量就可以了:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
如果安装时指定了安装目录,使用类似下面的命令:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/gcc-4.6.3/mpc-0.9/mpc_install/lib:/opt/gcc-4.6.3/gmp-5.0.4/gmp_install/lib
参考:http://www.jiagoumi.com/work/811.html
【工作】Centos6.5 升级glibc解决“libc.so.6: version GLIBC_2.14 not found”报错问题
写在前面:
从上面报错可以看出,程序运行时候,没有找到“GLIBC_2.14”这个版本库,而默认的Centos6.5 glibc版本最高为2.12, 所以需要更新系统glibc库。
解决办法:
1.查看系统版本和glibc库版本
2.下载软件并升级:
继续完成后续的安装:
3.再次查看glibc支持的版本:
其他知识点:
接下来当你建立新的软链接时候,会发现ln命令不能用了。
转载于:https://www.cnblogs.com/bonelee/p/8310389.html
SUSE glibc升级为2.18过程记录相关推荐
- 利用vmware虚拟机实验从SUSE SLES12sp3 升级到SLES15sp1的过程
利用vmware虚拟机实验从SUSE SLES12sp3 升级到SLES15sp1的过程 1. 首先要给虚拟机安装两个光盘,第一个光驱装入15sp1的Installer光盘用于启动系统和选择升级选项, ...
- iPad 2升级iOS 9的过程记录
有一台老旧的iPad2,iOS版本还是5.1.1,现在好多软件都无法安装了. 决定升级到最新的操作系统,中间的过程,遇到的问题和解决办法如下: 据说升级到iOS 9以后就不好越狱了,不过我也就是用用一 ...
- Macbook Air 10.5.3 升级和安装Win7过程记录
同事一台MacBook Air(13 英寸,2008 年末)的笔记本,128G SSD,2G RAM,intel duo的CPU,想装个Win10,用来写文档.经查苹果官网,该款机器不支持Win10, ...
- CentOS下升级python2.7.10过程记录
1.准备好一份Python2.7.10源码包,下载地址: http://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz 2.安装Python2.7 ...
- tflearn anaconda 安装过程记录
准备工作: gcc升级为4.8.2 glibc升级为2.18 /opt/xxx/xxx/components/ficlient/bigdata_env 里加入: export LD_LIBRARY_P ...
- 我在Suse 11 Sp3上使用anaconda安装TensorFlow的过程记录
我在Suse 11 Sp3上使用anaconda安装TensorFlow的过程记录准备安装包: gcc48 glibc-2.18.tar.gz SLES-11-SP4-DVD-x86_64-GM-DV ...
- 记一次GLIB2.14升级GLIB2.18的记录以及其中的步骤原理
注意:至于什么是GLIB本篇文章不作赘述.大家在升级GLIB前记得先打个快照,以免升级以后某些程序不能正常运行.本文适用多版本,这里只记录2.18. 背景: 由于某种生产需求,虚拟机的环境为cento ...
- centos 虚拟机glibc升级_分享Centos6.5升级glibc过程
上次看到有同学对Centos系统 glibc升级有点疑问, 不过相对来说glibc升级还是比较简单的, 网上也有很多介绍文章, 这里整理了个安装过程供大家参考下 阅读原文 场景需求 默认的Centos ...
- 维修记录,移动升级千兆宽带过程中的坑
维修记录,移动升级千兆宽带过程中的坑 一.升级千兆的原因 为什么想着去升级千兆网线. 二.升级千兆业务的吐槽 槽点一:套餐捆绑销售 槽点二:路由捆绑销售 三.升级千兆的上门服务吐槽 槽点三:四线接头 ...
最新文章
- Protractor测试环境搭建
- 求正多边形的面积JAVA_第六章第三十六题(几何:正多边形的面积)(Geometry: area of a regular polygon)...
- C++二个数组求并集的实现算法(附完整源码)
- 数据可视化【五】 Scatter Plot
- 关于Trie的一些算法
- ansible动态inventory里的针对AWS中国的设置
- 史上最大内存!曝iPhone 14 Pro系列运行内存将增至8GB
- Nginx: error while loading shared libraries: libpcre.so.1解决
- [转]python3_unboundlocalerror报错原因
- 安全地更改grub2屏幕分辨率
- java后端开发项目流程_Java项目——后端笔记
- JVM---类加载与字节码技术
- 【Java】每日一点Java小知识 --- day6
- Java学习教程,Java从入门到精通,全套Java视频教程+笔记+配套工具
- etcd之日志和快照管理
- 人工智能基础(高中版)教材补充和资源分享之番外篇 Cozmo+Python+ROS+AI
- Android通讯录(联系人)-ContentProvider
- vba中excel和word复制粘贴
- HTML_06(Dom(03))
- 慧数汽车大数据洞察:《车主评价白皮书2019》之小型车篇
热门文章
- java多线程问题_【java 多线程】多线程并发同步问题及解决方法
- 制作模板_木模板制作流程
- oracle 24365,深入解析:DBA_OBJECTS中的OBJECT_ID与DATA_OBJECT_ID的区别
- java批量导出word_java 批量生成word 文件
- mysql8.0查看用户_MySQL 8.0用户及安全管理
- Linux内核启动速度优化,嵌入式Linux启动时间优化的秘密之五-Bootloader
- mysql8jdbc连接串_mysql8 JDBC连接注意事项
- mysql查询每小时数据和上小时数据的差值
- 每天一个linux命令(20):find命令之exec
- python【蓝桥杯vip练习题库】BASIC-17矩阵乘法(枚举)