Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9356

ubuntu 20.04でnpmがaptで導入できない場合の対処方法

$
0
0
はじめに Ubuntu20.04にてReactの環境を再度構築しようとして、Ubuntu20.04に最新のnode.jsとTypeScriptをインストールする方法あたりを参考にapt getしてみたが、以下のようにnpm導入でエラーになる事があってInstallできなかった。 ちょこっと調べて解決したので、備忘録として残しておく。 aptでnpmをInstall sudo apt-get install npm パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 インストールすることができないパッケージがありました。おそらく、あり得 ない状況を要求したか、(不安定版ディストリビューションを使用しているの であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移 動されていないことが考えられます。 以下の情報がこの問題を解決するために役立つかもしれません: 以下のパッケージには満たせない依存関係があります: npm : 依存: node-gyp (>= 3.6.2~) しかし、インストールされようとしていません E: 問題を解決することができません。壊れた変更禁止パッケージがあります。 解決方法 既に導入していたlibssl-devが依存しているlibssl1.1のバージョンが新しかったのが原因。 既に導入しているlibssl1.1 (= 1.1.1f-1ubuntu2.4) npm導入に必要なパッケージ:libssl-dev : 依存: libssl1.1 (= 1.1.1f-1ubuntu2.3) このため、libssl1.1 を自分の環境では、1.1.1f-1ubuntu2.3で指定してReInstallすればnpmの導入が可能だった。 $ sudo apt install --reinstall libssl1.1=1.1.1f-1ubuntu2.3 $ sudo apt install npm あとは、お好みで、node.jsのバージョン固定用に、npmでnのpackageを導入。 $ sudo npm install n -g 最後にnでStableのnode.jsを導入すればOKです。 $ sudo n stable ここまでこれば、最初に入れた古いnode.js,npmは消しちゃってもOK。 $ sudo apt purge -y nodejs npm $ exec $SHELL -l 試行錯誤した内容 何が悪いか、順に依存関係が満たせないパッケージをInstallしてみた。 node-gypをインストール node-gypのInstall $ sudo apt install node-gyp パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 インストールすることができないパッケージがありました。おそらく、あり得 ない状況を要求したか、(不安定版ディストリビューションを使用しているの であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移 動されていないことが考えられます。 以下の情報がこの問題を解決するために役立つかもしれません: 以下のパッケージには満たせない依存関係があります: node-gyp : 依存: libnode-dev しかし、インストールされようとしていません E: 問題を解決することができません。壊れた変更禁止パッケージがあります。 libnode-dev がInstallできないようなので、次にlibnode-devをInstallしてみる。 libnode-devをインストール libnode-devのInstall $ sudo apt install lobnode-dev パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 E: パッケージ lobnode-dev が見つかりません 今度は、lobnode-dev が見つかりませんとのことだったので、lobnode-devをInstallしてみる。 lobnode-devをインストール lobnode-devのInstall $ sudo apt install libnode-dev パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 インストールすることができないパッケージがありました。おそらく、あり得 ない状況を要求したか、(不安定版ディストリビューションを使用しているの であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移 動されていないことが考えられます。 以下の情報がこの問題を解決するために役立つかもしれません: 以下のパッケージには満たせない依存関係があります: libnode-dev : 依存: libssl-dev (>= 1.1.1~) しかし、インストールされようとしていません E: 問題を解決することができません。壊れた変更禁止パッケージがあります。 結局、既に導入していたlibssl-devが(>= 1.1.1~)となっているが満たせないのが分かった。 libssl-devの確認。 まずは、問題を確認するため、apt installでレコメンド情報を見てみる libssl-devのInstall $ sudo apt install libssl-dev パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 インストールすることができないパッケージがありました。おそらく、あり得 ない状況を要求したか、(不安定版ディストリビューションを使用しているの であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移 動されていないことが考えられます。 以下の情報がこの問題を解決するために役立つかもしれません: 以下のパッケージには満たせない依存関係があります: libssl-dev : 依存: libssl1.1 (= 1.1.1f-1ubuntu2.3) しかし、1.1.1f-1ubuntu2.4 はインストールされようとしています E: 問題を解決することができません。壊れた変更禁止パッケージがあります。 libssl1.1 (= 1.1.1f-1ubuntu2.3)をInstallしたいが、apt installでは、1.1.1f-1ubuntu2.4のバージョンでしかInstallされないようなので、強制的に1.1.1f-1ubuntu2.3をダウングレードReInstallしてみる。 libssl-devのダウングレードインストール 前人の知恵として、「Ubuntu 18.04でのlibssl-dev依存関係の問題」を参考にReInstallを試みる。 libssl1.1のダウングレードReInstall $ sudo apt install --reinstall libssl1.1=1.1.1f-1ubuntu2.3 パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下のパッケージは「ダウングレード」されます: libssl1.1 アップグレード: 0 個、新規インストール: 0 個、ダウングレード: 1 個、削除: 0 個、保留: 1 個。 1,320 kB のアーカイブを取得する必要があります。 この操作後に 1,024 B のディスク容量が解放されます。 続行しますか? [Y/n] y 取得:1 http://security.ubuntu.com/ubuntu focal-security/main amd64 libssl1.1 amd64 1.1.1f-1ubuntu2.3 [1,320 kB] 1,320 kB を 2秒 で取得しました (625 kB/s) パッケージを事前設定しています ... dpkg: 警告: libssl1.1:amd64 を 1.1.1f-1ubuntu2.4 から 1.1.1f-1ubuntu2.3 にダウン グレードしています (データベースを読み込んでいます ... 現在 241242 個のファイルとディレクトリがイン ストールされています。) .../libssl1.1_1.1.1f-1ubuntu2.3_amd64.deb を展開する準備をしています ... libssl1.1:amd64 (1.1.1f-1ubuntu2.3) で (1.1.1f-1ubuntu2.4 に) 上書き展開していま す ... libssl1.1:amd64 (1.1.1f-1ubuntu2.3) を設定しています ... libc-bin (2.31-0ubuntu9.3) のトリガを処理しています ... sazus@charon:~$ sudo apt install libssl-dev パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 提案パッケージ: libssl-doc 以下のパッケージが新たにインストールされます: libssl-dev アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 1 個。 1,582 kB のアーカイブを取得する必要があります。 この操作後に追加で 8,006 kB のディスク容量が消費されます。 取得:1 http://security.ubuntu.com/ubuntu focal-security/main amd64 libssl-dev amd64 1.1.1f-1ubuntu2.3 [1,582 kB] 1,582 kB を 2秒 で取得しました (733 kB/s) 以前に未選択のパッケージ libssl-dev:amd64 を選択しています。 (データベースを読み込んでいます ... 現在 241242 個のファイルとディレクトリがイン ストールされています。) .../libssl-dev_1.1.1f-1ubuntu2.3_amd64.deb を展開する準備をしています ... libssl-dev:amd64 (1.1.1f-1ubuntu2.3) を展開しています... libssl-dev:amd64 (1.1.1f-1ubuntu2.3) を設定しています ... これでnpm導入に必要なlibssl1.1が導入できたので、あとはsudo apt install npmするだけでOK

Viewing all articles
Browse latest Browse all 9356

Trending Articles