Tuesday, January 9, 2024

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

$ node -v

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

Solved

  • ปัญหาคือ Ubuntu version เราไม่ support nodejs v 20
  • ทางแก้คือ upgrade os ubuntu ให้สูงกว่า 18.04
  • หรือ เปลี่ยน nodejs กลับไปเป็น version 16 คือเก่า ในที่นี้เราจะใช้ nvm (ตัวติดตั้งโดยเลือก เวอร์ชั่นที่เราต้องการได้เลย ) ติดตั้งและตั้งค่าไปใช้อันที่ติดตั้งใหม่
  • ขั้นแรกต้องลง nvm ให้ระบบเราก่อน

$ sudo curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

$ sudo nano $HOME/.bashrc

  • เพิ่มไว้ด้านล่างสุดของไฟล์ .bashrc

check=' export NVM_DIR="$HOME/.nvm"'

if ! grep -qF "$check" ~/.bashrc; then

    echo "" >>~/.bashrc

    echo "# Add NVM to path" >>~/.bashrc

    echo 'export NVM_DIR="$HOME/.nvm"' >>~/.bashrc

    echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >>~/.bashrc

    echo '[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"' >>~/.bashrc

fi

  • จากนั้นใช้ สลับกลับไปใช้อันเดิมโดย (เราจะได้  16 -> 16.20.2)

$ nvm install 16 

$ nvm use 16

Add

  • ถ้าเราต้องใช้ติดตั้ง node lts version ล่าสุดใช้คำสั่ง 

$ nvm install --lts

  • ติดตั้งโดยระบุเวอร์ชั่น ล่าสุดของ 16 -> 16.20.2

$ nvm install 16

  • หรือติดตั้งระบุเวอร์ชั่นแบบระบุ 16.15.1 (Ubuntu 18.04 apt install nodejs จะได้เวอร์ชั่นนี้)

$ nvm install 16.15.2

  • กรณีสลับ version การ node ที่เราได้ติดตั้งไว้แล้วในระบบคือ

$ nvm use 16.15.1

$ nvm use 18 (อันนี้ก็ใช้ใน Ubuntu 18.04 ไม่ได้เช่นกัน)

$ nvm use 20

  • เช็ค GLIB ของ OS เราด้วยคำส่ง

$ ldd --version

Ref

  • https://stackoverflow.com/questions/72921215/getting-glibc-2-28-not-found

No comments:

Post a Comment