首页 > 其他分享 >glibc版本过低导致软件编译失败或引发其他问题

glibc版本过低导致软件编译失败或引发其他问题

时间:2023-06-27 16:38:10浏览次数:35  
标签:node gnu -- glibc 编译 版本 过低 源代码


glibc(GNU C Library)是一个核心库,为GNU/Linux操作系统提供最基本和最重要的系统调用和函数。它是标准C库的实现,被几乎所有基于Linux的应用程序使用。它提供了内存管理、输入/输出操作、文件处理、字符串操作和许多其他基本操作的函数。它由GNU计划维护,根据GNU Lesser General Public License发布。

npm install hexo-cli -g

node: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by node)

node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by node)

node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by node)

glibc版本过低导致软件编译失败或引发其他问题_bc

软件编译是失败出现报错:

由于Linux系统的glibc版本太低,而软件编译时使用了较高版本的glibc引起的!

glibc版本过低导致软件编译失败或引发其他问题_GNU_02

glibc版本过低导致软件编译失败或引发其他问题_GNU_03编辑

下载glibc源代码并解压。

  1. 打开终端。
  2. 使用以下命令下载glibc的源代码压缩包:

wget https://ftp.gnu.org/gnu/libc/glibc-x.x.tar.gz

其中,"x.x"是你想要下载的glibc版本号。 如果你的Linux系统中没有安装wget,你可以使用其他工具如curl来下载文件。

  1. 下载完成后,使用以下命令解压缩源代码压缩包:

tar -zxvf glibc-x.x.tar.gz

这将在当前目录下创建一个名为"glibc-x.x"的目录,其中包含glibc的源代码。

解压缩后,进行进一步的编译和安装操作。

进入解压后的文件夹,打开终端,输入如下命令:


./configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/binglibc版本过低导致软件编译失败或引发其他问题_bc_04


然后输入如下命令:


make && make installglibc版本过低导致软件编译失败或引发其他问题_linux_05


最后,检查glibc版本是否已更新。在终端输入如下命令:


ldd --versionglibc版本过低导致软件编译失败或引发其他问题_linux_06


如果glibc版本已经更新,则会显示新的版本号。

请注意,升级glibc可能会导致您的操作系统无法使用,因此请小心,在升级之前在相同版本的操作系统模拟上进行测试。另外,请确保将新版本glibc所需的库文件复制到各自的目录中


标签:node,gnu,--,glibc,编译,版本,过低,源代码
From: https://blog.51cto.com/u_16172318/6563937

相关文章

  • 一行命令使用 Docker 编译 Latex 文件,简单优雅
    使用Docker编译LaTeX文章LaTeX是一种常用的排版系统,它可以帮助用户创建漂亮、专业的文档。但是,安装和配置LaTeX比较麻烦,特别是对于初学者而言。Docker是一个开源平台,可以让用户通过容器化技术来构建、发布和运行应用程序。使用Docker容器可以避免依赖问题,从而使得在不......
  • ubunut 虚拟机 , 编译过程中, 内存爆满, 卡死 ,重启后报错。
    问题: 在虚拟机中编译linux 过程中,内存沾满,之后强制重启,之后,虚拟机无法启动。报错如下:  解决的方法就是,找到虚拟机的文件夹,然后删除以.lck后缀的文件夹,所有的都产出,重启就可以了。 ......
  • 不能使用astyle对Linux的Kconfig和Makefile进行排版,会导致编译错误
    代码排版工具不同人代码的排版习惯不一样。遇到自己不喜欢的格式,看起来比较麻烦。可以使用astyle对代码进行排版。我喜欢以"otbs"格式的排版。命令如下:astyle-s--style=otbs*.castyle-s--style=otbs*.h错误排版一次使用时,不小心对所有文件进行了排版。hankf@XSZGS4......
  • 解决PetaLinux编译Microblaze的U-Boot的错误 “undefined reference to `eth_get_dev_
    错误PetaLinux编译Microblaze的U-Boot时,遇到下列错误,链接时提示找不到相关函数。|microblazeel-xilinx-linux-ld.bfd-Bstatic--no-dynamic-linker-Ttext0x80100000-ou-boot-Tu-boot.ldsarch/microblaze/cpu/start.o--start-grouparch/microblaze/cpu/built-......
  • 编译 CoreML 模型
    本篇文章译自英文文档CompileCoreMLModels作者是JoshuaZ.Zhang,KazutakaMorita,ZhaoWu更多TVM中文文档可访问→ApacheTVM是一个端到端的深度学习编译框架,适用于CPU、GPU和各种机器学习加速芯片。|ApacheTVM中文站本文介绍如何用Relay部署CoreML模型。首先......
  • makefile只编译修改过的文件
    本文演示配置makefile,检测修改的代码才编译,提升编译效率。1.测试代码$tree.├──app.c├──lib│├──module2.c│└──module2.h├──makefile├──module1.c└──module1.happ.c#include<stdio.h>#include"app.h"#include"......
  • linux 安装 mysql 的 glibc 包
    下载mysql:http://downloads.mysql.com/archives.php选择一个mysql的版本,之后一定要看好,下glibc的。如:mysql-5.0.90-linux-i686-glibc23.tar.gz本例中下载到了/media目录下,这个不是好习惯... ▲安装mysql:下面是linux命令:$sudogroupaddmysql:$sudouseradd-gmysql......
  • spring boot 编译打包时将自定义引入的.jar包依赖,全部打包进去
    发现自己引入的.jar包,在打包时,.jar包并不会打进去,导致报错。打包时打入自定义.jar包方法:<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</a......
  • C++面试八股文:std::array如何实现编译器排序?
    某日二师兄参加XXX科技公司的C++工程师开发岗位第25面:面试官:array熟悉吗?二师兄:你说的是原生数组还是std::array?面试官:你觉得两者有什么区别?二师兄:区别不是很大,原生数组(非动态数组)和std::array都在栈上开辟空间,初始化的时候需要提供数组长度,且长度不可改变。有一点区别的是,st......
  • C++面试八股文:std::array如何实现编译器排序?
    某日二师兄参加XXX科技公司的C++工程师开发岗位第25面:面试官:array熟悉吗?二师兄:你说的是原生数组还是std::array?面试官:你觉得两者有什么区别?二师兄:区别不是很大,原生数组(非动态数组)和std::array都在栈上开辟空间,初始化的时候需要提供数组长度,且长度不可改变。有一点区别的是,std......