CentOSにNode.jsをインストール

サーバ関連
スポンサーリンク

初めに

これまで私が作成しているDiscordのBotは、すべてメッセージの待ち受け型になっているんですが、
この度Discordの仕様が変わりまして、メッセージ待ち受けは廃止され、スラッシュコマンドで待ち受けなければならなくなりました。

そこで現状を確認したところ、discord.jsもnode.jsもバージョンが低く、まずはバージョンアップする必要まで出てきてしまいました。。。/(^o^)\

とりあえず、node.jsのほうを一度アンインストールしておき、新規のインストールをした体で記載しておこうと思いました。

現在の状況を確認

# node --version
-bash: /usr/local/bin/node: No such file or directory

# npm -v
-bash: /usr/local/bin/npm: No such file or directory

バージョンが表示されない場合は、インストールされていません。

リポジトリの追加

CentOS 7では、標準で最新版のnode.jsのリポジトリが登録されていないらしいです。
まずは登録しておきましょう。

# curl -fsSL https://rpm.nodesource.com/setup_16.x

インストール

# yum install -y nodejs

確認

node -v
-bash: /usr/local/bin/node: No such file or directory

# npm -v
-bash: /usr/local/bin/npm: No such file or directory

・・・・・あれ???
でてこない。なんで?????

nモジュール

Node.jsのバージョンを管理しているもので、nモジュールなんてものがある。
(もしかしたら過去に自分で入れたのかな?)

とりあえず、以下コマンドでバージョンを最新に変更し、再びバージョン確認

# n latest
# node -v
node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by node)
node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' 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 `GLIBCXX_3.4.21' not found (required by node)

またエラーが。。。

調べてみると、GLIBC関連がnodeの最新版に対応していないらしく、少しバージョンを下げるといいらしい。

別バージョンのインストール

# yum install -y gcc-c++ make
# curl -sL https://rpm.nodesource.com/setup_16.x | sudo -E bash - 

こうしておくと、16.xの適切なバージョンがリポジトリに登録されるらしい。
登録後、再度インストールコマンドを実行する

# yum install nodejs 

やっぱりできない(´・ω・`)

結論

どうやら、nモジュールのほうからバージョンアップができたらしい。(盲点
なおnモジュールでは、以下でバージョン確認ができます。

# n --stable
# n --latest

1行目は推奨バージョン、2行目は最新バージョン
執筆時点(2022-09-05)では、推奨バージョンは16.17.0らしい。
Discord.jsのスラッシュコマンドも使える組み合わせなので、これでいきましょう。

# n stable

インストール完了後、以下コマンドにてバージョンを確認

# node -v
v16.17.0

お、ちゃんと変更されましたね。
nモジュールでも確認してみましょう。

# n

    node/12.18.2
  ο node/16.17.0
    node/18.8.0

Use up/down arrow keys to select a version, return key to install, d to delete, q to quit

インストールされているバージョンの中で、今回インストールしたものが選択されていますね。

というわけで、何とかバージョンアップができました。。。(疲れた

nモジュールのインストールなどは割愛してしまいましたが、
余力があれば書いておきましょうかね(余力があれば。。。

余談

一応、DiscordのBotのためのバージョンアップでしたので、discord.jsのほうもバージョン確認しておきます。

まず、node_modulesのインストールされているディレクトリへ移動しましょう。
※以下は私の環境の場合

# cd /home/bot
# ls
node_modules  package-lock.json  package.json

node_modulesがちゃんとありますね。
ここで以下コマンドをすると、discord.jsのバージョンが確認できます。

# npm ls discord.js
xxx@0.0.1 /home/bot
`-- discord.js@14.3.0

※yarnを使ってインストールしている方はこちらだそうです。
yarn list discord.js

以上、疲れたのでここまで!

コメント

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