国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Linux-編譯器gcc/glibc升級】CentOS7.9使用NodeJS18時報錯/lib64/libm.so.6: version `GLIBC_2.27‘ not found

這篇具有很好參考價值的文章主要介紹了【Linux-編譯器gcc/glibc升級】CentOS7.9使用NodeJS18時報錯/lib64/libm.so.6: version `GLIBC_2.27‘ not found。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

文章已收錄至https://lichong.work,轉(zhuǎn)載請注明原文鏈接。
ps:歡迎關(guān)注公眾號“Fun肆編程”或添加我的私人微信交流經(jīng)驗??

背景

最近做一個前端項目Jenkins的自動構(gòu)建時,項目使用nodejs18,正好公司Jenkins節(jié)點有些不夠用,就用了臺資源空余比較多的服務(wù)器用于充當Jenkins節(jié)點,配置好NodeJS路徑后,構(gòu)建時產(chǎn)生報錯如下:

node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node)

分析原因

使用strings命令查看當前glibc支持的版本

# 使用strings命令查看
strings /lib64/libc.so.6 |grep GLIBC_
# 查看結(jié)果如下:
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

發(fā)現(xiàn)只能到2.17
執(zhí)行ldd --version也會看到glibc版本是2.17

解決方案

  1. 升級 gcc 和 glibc 版本:注意,在升級前備份重要數(shù)據(jù),并仔細閱讀相關(guān)文檔和使用說明。
  2. 使用其他發(fā)行版:可以考慮使用其他發(fā)行版,如 Ubuntu 或 Fedora,這些發(fā)行版默認已經(jīng)安裝了適用于 Node.js 18 的 gcc 和 glibc 版本。
  3. 使用 Node.js 16:Node.js 16 是一個長期支持版本(LTS),它需要的 gcc 和 glibc 版本要求相對較低,可能與你的系統(tǒng)版本兼容。您可以嘗試使用 Node.js 16,它可以提供類似于 Node.js 18 的功能,并在未來幾年內(nèi)受到支持和更新。

小結(jié)
作為硬核技術(shù)派頭鐵程序員,我當然選擇方案一。

執(zhí)行步驟

我們可以手動下載gcc包和glibc包,然后進行配置、編譯、安裝、掛載這些步驟,但這樣做風(fēng)險還是有點大的,特別是不太懂的小白很容易把服務(wù)器搞崩。

推薦方式

這里推薦先使用devtoolset工具進行自動安裝,操作步驟如下:

  1. 安裝 devtoolset 8:Devtoolset 8 包括更新的 GCC 和 GLIBC,可以滿足 Node.js 18 的要求。使用以下命令安裝 Devtoolset 8:
sudo yum install centos-release-scl
sudo yum install devtoolset-8
  1. 激活 devtoolset 8:安裝完成 Devtoolset 8 后,需要激活 Devtoolset 8 才能使用更新的 GCC 和 GLIBC。使用以下命令激活 Devtoolset 8:
scl enable devtoolset-8 bash
  1. 更新 GCC 和 GLIBC:使用 Devtoolset 8 提供的更新版本替換系統(tǒng)自帶的 GCC 和 GLIBC。使用以下命令更新:
sudo yum install devtoolset-8-toolchain
sudo scl enable devtoolset-8 bash

  1. 驗證更新版本:使用以下命令驗證 GCC 和 GLIBC 版本:
gcc --version
ldd --version

如果顯示的 GCC 版本為 8.x.x,并且顯示的 GLIBC 版本為 2.28 或更高版本,則說明已成功更新。
5. 再執(zhí)行node -v命令來看看是否還有報錯?

踩坑記錄

執(zhí)行ldd --version后發(fā)現(xiàn)glibc還是2.17版本,所以需要手動升級了,附上手動升級glibc的步驟:

  1. 下載 GLIBC 源碼:可以從官方網(wǎng)站或者清華鏡像下載 GLIBC 的源碼包,例如 glibc-2.28.tar.gz(不建議裝太新的)。
  2. 解壓源碼包:使用 tar 命令解壓源碼包:
tar -xzf glibc-2.28.tar.gz
  1. 編譯和安裝:切換到源碼目錄并使用 configure 和 make 命令編譯和安裝 GLIBC:
cd glibc-2.28
mkdir build
cd build
../configure --prefix=/usr
make
sudo make install
  1. 安裝成功。

文章已收錄至https://lichong.work,轉(zhuǎn)載請注明原文鏈接。
ps:歡迎關(guān)注公眾號“Fun肆編程”或添加我的私人微信交流經(jīng)驗??

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~往期精選??~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

【Docker】入門教程-基本概念解讀
【前端-React Native】移動端原生開發(fā)整合React Native Elements教程-安卓示例
【前端-開發(fā)環(huán)境】使用NVM實現(xiàn)不同nodejs版本的自由切換(NVM完整安裝使用手冊)
【前端-NPM私服】內(nèi)網(wǎng)使用verdaccio搭建私有npm服務(wù)器
【前端-IE兼容】Win10和Win11使用Edge調(diào)試前端兼容IE6、IE7、IE8、IE9、IE10、IE11問題
【前端-工程化】React項目工程化記錄-內(nèi)置項目活文檔(老項目升級優(yōu)化-集成Hosky/ESLint/Prettier-升級Webpack/Babel/NodeSass/React)
【工具-TWRP-frp-Termux】舊手機暴改成免費云服務(wù)器-MIUI刷TWRP安裝magisk獲取root
【工具-Shell腳本】java程序產(chǎn)品包模板-linux和windows通用shell啟動停止腳本(無需系統(tǒng)安裝Java運行環(huán)境)
【工具-Nginx】從入門安裝到高可用集群搭建
【工具-Nginx】Nginx高性能通用配置文件-注釋版-支持防刷限流、可控高并發(fā)、HTTP2、防XSS、Gzip、OCSP Stapling、負載、SSL
【工具-WireShark】網(wǎng)絡(luò)HTTP抓包使用教程
【后端-maven打包】通過profile標簽解決同時打jar包 war包需求
【架構(gòu)-DDD】使用領(lǐng)域驅(qū)動設(shè)計-互聯(lián)網(wǎng)未來架構(gòu)設(shè)計之道(一)
【后端-SpringCache】基于Spring Cache封裝一個能夠批量操作的Redis緩存記錄下踩坑歷程(pipeline或mget封裝)
【后端-SkyWalking】SkyWalking前后端開發(fā)環(huán)境搭建詳細教程步驟-6.x/7.x/8.x版本通用-插件二次開發(fā)利器(一)
【后端-Quartz】Springboot整合Quartz支持集群環(huán)境-設(shè)計業(yè)務(wù)與框架分離及實現(xiàn)定時任務(wù)調(diào)度

?歡迎為耿直少年點贊、關(guān)注、收藏?。?!

??????文章來源地址http://www.zghlxwxcb.cn/news/detail-561064.html

到了這里,關(guān)于【Linux-編譯器gcc/glibc升級】CentOS7.9使用NodeJS18時報錯/lib64/libm.so.6: version `GLIBC_2.27‘ not found的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Linux--編譯器-gcc/g++使用

    Linux--編譯器-gcc/g++使用

    目錄 前言 1.看一段樣例 ?2.程序的翻譯過程 1.第一個階段:預(yù)處理 2.第二個階段:編譯 3.第三個階段:匯編 4.第四個階段:鏈接 3.程序的編譯為什么是這個樣子? 4. 關(guān)于編譯器 5.鏈接(動靜態(tài)鏈接) 1.首先,我們來看一段樣例(見一下) 2.見完之后,我們來看一下程序的翻譯

    2024年02月20日
    瀏覽(29)
  • 【Linux】03 GCC編譯器的使用

    【Linux】03 GCC編譯器的使用

    ?在使用gcc編譯程序時,編譯過程可以簡要劃分為4個階段: ? ? ? ? 預(yù)處理、編譯、匯編、鏈接 這個階段主要處理源文件中的#indef、#include和#define預(yù)處理命令; 這里主要是把一些include的頭文件和一些宏定義,放到源文件中。 編譯命令: gcc? -E? -o? hello.i? hello.c 將經(jīng)過預(yù)處

    2024年01月20日
    瀏覽(31)
  • 【Linux】編譯器-gcc/g++使用

    【Linux】編譯器-gcc/g++使用

    個人主頁 : zxctscl 文章封面來自:藝術(shù)家–賢海林 如有轉(zhuǎn)載請先通知 在之前已經(jīng)分享了 【Linux】vim的使用,這次來看看在云服務(wù)器上的編譯器gcc。 我們先寫一段簡單的代碼: 當我們進行編譯的時候: 發(fā)現(xiàn)根本就編譯不了。 這個是因為編譯器版本的問題: 查看編譯器的版

    2024年03月11日
    瀏覽(19)
  • Linux編譯器——gcc/g++使用

    Linux編譯器——gcc/g++使用

    前言: ?在上一篇,我們學(xué)習(xí)了關(guān)于文本編輯器 vim 的全部知識,今天給大家?guī)淼氖顷P(guān)于Linux編譯器—gcc/使用的詳細介紹。 本文目錄 ?(一)溫習(xí)程序的產(chǎn)生的過程 1、前言 2、程序的產(chǎn)生過程 3、??初步認識 gcc?? a)?gcc的基本概念 b)gcc的基本特點 4、使用方法?? (二)

    2023年04月17日
    瀏覽(21)
  • Linux編譯器 gcc與g++

    Linux編譯器 gcc與g++

    程序的編譯過程: 1、 預(yù)處理 (頭文件包含、消除注釋、宏定義替換) 2、 編譯 (將語言替換成匯編代碼) 3、 匯編 (將匯編指令轉(zhuǎn)換為二進制指令) 4、 鏈接 (合并段表、符號表合并及重定位) 我們可以通過gcc工具實現(xiàn)程序的編譯過程: 2.1 預(yù)處理 預(yù)處理會完成:①頭

    2023年04月18日
    瀏覽(38)
  • Linux的編譯器——gcc/g++(預(yù)處理、編譯、匯編、鏈接)

    Linux的編譯器——gcc/g++(預(yù)處理、編譯、匯編、鏈接)

    前言: 本文主要認識與學(xué)習(xí) Linux 環(huán)境下常用的編譯器—— gcc (編譯 C 代碼)/ g++ (編譯 C++ 代碼)的常用指令等、程序?qū)崿F(xiàn)的兩大環(huán)境、動態(tài)庫與靜態(tài)庫的理解等。 任何一個 C 程序的實現(xiàn)都要經(jīng)過 翻譯環(huán)境 與 執(zhí)行環(huán)境 。 在翻譯環(huán)境中又分為4個部分, 預(yù)編譯、編譯、匯

    2024年02月13日
    瀏覽(23)
  • [linux初階][vim-gcc-gdb] TwoCharter: gcc編譯器

    [linux初階][vim-gcc-gdb] TwoCharter: gcc編譯器

    目錄 一.Linux中g(shù)cc編譯器的下載與安裝 二.使用gcc編譯器來翻譯 C語言程序? ①.編寫C語言代碼 ②翻譯C語言代碼 a.預(yù)處理 b.編譯? c.匯編? d.鏈接 ③.執(zhí)行Main 二進制可執(zhí)行程序(.exe文件)? 三.總結(jié)? 使用yum命令(相當于手機上的應(yīng)用市場)來進行安裝. ?下載完畢之后,使用 which gc

    2024年04月10日
    瀏覽(44)
  • Linux的學(xué)習(xí)之路:6、Linux編譯器-gcc/g++使用

    Linux的學(xué)習(xí)之路:6、Linux編譯器-gcc/g++使用

    本文主要是說一些gcc的使用,g++和gcc使用一樣就沒有特殊講述。 目錄 摘要 一、背景知識 二、gcc如何完成 1、預(yù)處理(進行宏替換) 2、編譯(生成匯編) 3、匯編(生成機器可識別代碼 4、鏈接(生成可執(zhí)行文件或庫文件) 5、函數(shù)庫 6、靜態(tài)庫和動態(tài)庫 7、gcc選項 三、思維導(dǎo)圖

    2024年04月23日
    瀏覽(33)
  • 如何在 Linux 上安裝 C 和 GCC 編譯器?

    如何在 Linux 上安裝 C 和 GCC 編譯器?

    Linux 是一組開源的類 UNIX 操作系統(tǒng),Ubuntu 是一種基于 Linux 的操作系統(tǒng),通常用于運行基于 Linux 的應(yīng)用程序。要在 Linux 上安裝 C 并在 Ubuntu 上構(gòu)建和運行 C 程序文件,我們需要安裝 GCC 編譯器。在 Ubuntu 存儲庫中,GCC 編譯器是我們需要安裝的 構(gòu)建基本 包的一部分。 我們知道

    2024年04月13日
    瀏覽(28)
  • 【Linux環(huán)境基礎(chǔ)開發(fā)工具】編譯器-gcc/g++

    【Linux環(huán)境基礎(chǔ)開發(fā)工具】編譯器-gcc/g++

    上一篇博客, 我們學(xué)習(xí)了vim編輯工具,學(xué)會了怎么寫代碼, 這篇文章,我將分享代碼該怎么編譯的問題。 目錄 寫在前面: 1. gcc和g++介紹 2. gcc是如何編譯程序的 1. 預(yù)處理 2. 編譯 3. 匯編 4. 鏈接 3. gcc的選項介紹 4. 我們使用的函數(shù)是哪來的 5. 我們的.o文件和庫是如何鏈接的?

    2024年02月10日
    瀏覽(58)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包