【XServer】Node.jsがインストールできない

Laravel
スポンサーリンク

Xserver(共有サーバー)を利用しています。この共有サーバーに laravel を移管しようとたくらんでします。以前はVPSサーバーでないと Node.js はインストールできないと聞いていたのですが、今はできるようです。トライしてみましょう。

スポンサーリンク

流れ

1. Nodebrew をインストールする
2. Node.js をインストールする

Node.js をインストールする前に Nodebrew をインストールします。Nodebrew とは、Node.js のバージョン管理ツールです。複数のバージョンの Node.js を簡単に切り替えたり、インストール・管理したりすることができます。

Nodebrew をインストールする

Nodebrew をダウンロード・インストールします。

$ curl -L git.io/nodebrew | perl - setup

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100 26039  100 26039    0     0  11893      0  0:00:02  0:00:02 --:--:-- 24.8M
Fetching nodebrew...
Installed nodebrew in $HOME/.nodebrew

========================================
Export a path to nodebrew:

export PATH=$HOME/.nodebrew/current/bin:$PATH
========================================

.bash_profile を編集します。

$ vi ~/.bash_profile

ファイルの最後に以下の1文を追加します。

export PATH=$HOME/.nodebrew/current/bin:$PATH

バージョンを確認します。

$ source ~/.bash_profile
$ nodebrew -v
nodebrew 1.2.0

バージョンが表示されましたら正常にインストール完了です!

Node.js をインストールする

Node.js のインストールは nodebrew コマンドを使用します。

$ nodebrew install-binary stable
Fetching: https://nodejs.org/dist/v22.14.0/node-v22.14.0-linux-x64.tar.gz
######################################################################## 100.0%
Installed successfully

Node.js のバージョンを確認します。

トラブル発生!

Node.js のバージョンを確認しようとしたら以下のエラーが発生しました。

$ node -v
node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)
node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by node)
node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)
node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.27' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by node)

どうやら必要なライブラリが見つからないようです。これらライブラリをインストールするにはroot権限が必要ですが、XServer(共有サーバー)ですのでroot権限は取得できません。どうする?

Node.js のバージョンを下げます。ネットの記事をみて 16.20.0 を使用している方がいましたので真似します。

$ nodebrew install v16.20.0
Fetching: https://nodejs.org/dist/v16.20.0/node-v16.20.0-linux-x64.tar.gz
######################################################################## 100.0%
Installed successfully

$ nodebrew use v16.20.0
use v16.20.0

$ node -v
v16.20.0

バージョン確認できました。わざとこのバージョンを使用します。

まとめ

Node.js でライブラリを求められたときは、Node.js のバージョンを下げましょう。

ただいつまでも古いバージョンを使用するわけにはいかないかと思います。まぁその時はその時で考えますか!

共有サーバーにも Node.js をインストールできる時代が来ました。これで laravel を共有サーバーで動かせますね。

コメント

タイトルとURLをコピーしました