うどんワールド(emerge -uDN @world)を実行した後、依存関係の修復のために"emergeに@preserved-rebuild"を実行しますよね。そうすると、こんなエラーが
emerge: there are no ebuilds to satisfy "dev-lang/ruby:2.3".
gentooではもうruby 2.3系はサポートされてないので、そりゃebuildsはないですよ。
/etc/potage/make.confでRUBY_TAGETS="ruby24 ruby25"に指定してもダメ。
eselect ruby listを実行すると
Available Ruby profiles: [1] ruby22 [2] ruby23 [3] ruby24 (with Rubygems) [4] ruby25 (with Rubygems) *
プロファイルが残ってらっしゃる。
Gentoo Wikiではmake.confのRUBY_TAGETSを書き換えたらemerge -uDN @worldでOKと書いてありますが、全然OKではありません。
そこで、depcleanしてみます。
# emerge --depclean -pv dev-lang/ruby:2.3 Calculating dependencies... done! dev-lang/ruby-2.3.7 pulled in by: dev-ruby/did_you_mean-1.0.2 requires dev-lang/ruby:2.3 >>> No packages selected for removal by depclean Packages installed: 690 Packages in world: 149 Packages in system: 43 Required packages: 690 Number to remove: 0
そうですか、did_you_meanですか。ではこれを先に削除します。
# emerge -C =dev-ruby/did_you_mean-1.0.2 * This action can remove important packages! In order to be safer, use * `emerge -pv --depclean <atom>` to check for reverse dependencies before * removing packages. dev-ruby/did_you_mean selected: 1.0.2 protected: none omitted: 1.1.2 1.2.1 All selected packages: =dev-ruby/did_you_mean-1.0.2 >>> 'Selected' packages are slated for removal. >>> 'Protected' and 'omitted' packages will not be removed. >>> Waiting 5 seconds before starting... >>> (Control-C to abort)... >>> Unmerging in: 5 4 3 2 1 >>> Unmerging (1 of 1) dev-ruby/did_you_mean-1.0.2... * GNU info directory index is up-to-date.
これで、ruby 2.3を削除できるんでしょうか?
# emerge --depclean dev-lang/ruby:2.3 Calculating dependencies... done! >>> Calculating removal order... dev-lang/ruby selected: 2.3.7 protected: none omitted: 2.2.10 2.4.9 2.5.7 All selected packages: =dev-lang/ruby-2.3.7 >>> 'Selected' packages are slated for removal. >>> 'Protected' and 'omitted' packages will not be removed. >>> Waiting 5 seconds before starting... >>> (Control-C to abort)... >>> Unmerging in: 5 4 3 2 1 >>> Unmerging (1 of 1) dev-lang/ruby-2.3.7... >>> needed sym /usr/lib64/libruby23.so.2.3 >>> needed obj /usr/lib64/libruby23.so.2.3.0 Nothing to clean up. Packages installed: 688 Packages in world: 149 Packages in system: 43 Required packages: 688 Number removed: 1 * GNU info directory index is up-to-date.
お! 削除できました。
しかし、emerge: there are no ebuilds to satisfy が他のパッケージでも出てくること・・・。