UbuntuなどのようにLTSが出るたびに一斉に更新ではなく、定期的に更新していかないと簡単にパッケージが競合を起こして更新できなくなります。
そんな場合、問題のパッケージを
emerge -C
で強引に削除したあと、あらためてインストールすれば大抵なおります。でも、世の中そんなに甘くない。何も考えずにパッケージを削除してえらい目にあったおまぬけさんの物語です。
(イントロなげーよ)
何が起きた?
そもそもタイトルで出落ち感がありますが、一応説明します。binutilsはパッケージのビルドに必須なので、消したらそれ以降のパッケージ更新が一切できなくなるという罠でした。
どうやって直す?
一応調べてみたらこんな記事が→ gentoo - Fatal mistake: Uninstalled sys-devel/binutils - emerge don't work anymore - Unix & Linux Stack Exchangeやっぱり世の中には同じおまぬけさんがいるんですね。
ここの回答によると、
- GentooのダウンロードページからStage 3のtarballをダウンロード
- tarball内以下のファイルをシステムにコピー
/etc/env.d/binutils/x86_64-pc-linux-gnu-2.25.1
/usr/lib64/binutils/x86_64-pc-linux-gnu/*
/usr/share/binutils-data/x86_64-pc-linux-gnu/*
/usr/x86_64-pc-linux-gnu/binutils-bin/*
env-update && source /etc/profile
emerge binutils
でリビルドすればいいとのこと。
できた(●´ω`●)
おまぬけ仲間がいたらぜひお試しあれっ
0 件のコメント:
コメントを投稿