PuTTy 経由で SSH に接続して、Godaddy 共有 Linux ホスティングに Node.js をインストールしています。エラーが発生します。
curl -o-を実行しましたhttps://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.shnvm をインストールするには、「| bash」コマンドを使用します。「nvm --version」を実行すると「0.34.0」という応答が返されるため、NVM は正常にインストールされています。Node.js をインストールするには、「nvm install node」を実行します。
このコマンドを実行すると、次のエラーが発生します。
ノード: /usr/lib64/libstdc++.so.6: バージョン GLIBCXX_3.4.14' が見つかりません (ノードで必要) ノード: /usr/lib64/libstdc++.so.6: バージョン GLIBCXX_3.4.18' が見つかりません (ノードで必要) ノード: /usr/lib64/libstdc++.so.6: バージョン CXXABI_1.3.5' が見つかりません (ノードで必要) ノード: /usr/lib64/libstdc++.so.6: バージョン GLIBCXX_3.4.15' が見つかりません (ノードで必要) ノード: /lib64/libc.so.6: バージョン GLIBC_2.17' が見つかりません (ノードで必要) ノード: /lib64/libc.so.6: バージョン GLIBC_2.16' が見つかりません (ノードで必要) ノード: /lib64/libc.so.6: バージョン GLIBC_2.14' が見つかりません(ノードによって必要) nvm は npm config の "prefix" オプションと互換性がありません。現在は "" に設定されています。これを設定解除するには、Runnvm use --delete-prefix v12.9.0` を使用します。
「nvm install node」で Node.js とそのすべての依存関係が正常にインストールされることを期待しています。実際の結果 (Putty から):
nvm install node node v12.9.0 をダウンロードしてインストールしています... ダウンロード中https://nodejs.org/dist/v12.9.0/node-v12.9.0-linux-x64.tar.gz...
####################################################################### 100.0%sha256sum でチェックサムを計算しています。チェックサムが一致しました。ノード: /usr/lib64/libstdc++.so.6: バージョン GLIBCXX_3.4.14' が見つかりません (ノードで必要) ノード: /usr/lib64/libstdc++.so.6: バージョン GLIBCXX_3.4.18' が見つかりません (ノードで必要) ノード: /usr/lib64/libstdc++.so.6: バージョン CXXABI_1.3.5' が見つかりません (ノードで必要) ノード: /usr/lib64/libstdc++.so.6: バージョン GLIBCXX_3.4.15' が見つかりません (ノードで必要) ノード: /lib64/libc.so.6: バージョン GLIBC_2.17' が見つかりません (ノードで必要) ノード: /lib64/libc.so.6: バージョン GLIBC_2.16' が見つかりません (ノードで必要) ノード: /lib64/libc.so.6: バージョン GLIBC_2.14' が見つかりません(ノードによって必要) nvm は npm config の "prefix" オプションと互換性がありません。現在は "" に設定されています。これを設定解除するには、Runnvm use --delete-prefix v12.9.0` を使用します。
このブログを参考に -https://ferugi.com/blog/nodejs-on-godaddy-shared-cpanel/
どうか助けてください。
答え1
Cris の回答は根本的な原因を説明している点でおそらく正しいですが、質問者の環境 (GoDaddy 共有ホスティング) と互換性のある解決策は提示されていません。
によるとこれらの指示CodePunker によると、解決策は、GoDaddy 共有ホストにインストールされている libstdc++ のバージョンと互換性のある古いバージョンの node.js をインストールすることです。
- インストール中に、必要なGLIBCバージョンがないというエラーが表示された場合は、古い(サポートされていない可能性のある)バージョンのNode.jsをインストールする必要があります。
- これを行うには、nvm ls-remote --lts を実行します。これにより、リポジトリに存在するすべての長期サポート Node.js バージョンが表示されます。古いバージョンをインストールするには、nvm install vX.XX を実行してから nvm use vX.XX を実行します。
インストールする必要がある node.js の具体的なバージョンは、共有ホストがどれだけ古いかによって異なります。私はこれを v10.13.0 で正常にテストしましたが、現在のブランチの最も古いリリースにジャンプしただけで、新しいバージョンはテストしていません。
また、GoDaddy サポートに電話して、ホストを更新するか、より最新のライブラリを備えた別の共有ホストにサイトを移動するように依頼することもできます。
答え2
ベース システムを更新するか、ソースからコンパイルします (ベース システムの更新も必要になる場合があります)。GLIBCXX_3.4.15 シンボルがない場合は、libstdc++ が 2009 以前のものであることを意味します。
答え3
Thomasの回答は私にとってはうまくいきました。私は次のコマンドを使用してv10.13.0をインストールしました
nvm install v10.13.0
コマンドを実行するにはnvmが必要です。
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
これらのコマンドはすべて、ルート アクセスなしで ssh で実行されるため、共有ホスティングでも機能します。