- 1. 概要
- 2. 状況
- 3. 対策
1. 概要
発生は、2025年2月4日です。
2. 状況
下記の状態です。
$ portversion -v | grep '<'
[Reading data from pkg(8) ... - 650 packages found - done]
ruby32-gems-3.6.2 < needs updating (port has 3.6.3)
rubygem-psych-5.2.2 < needs updating (port has 5.2.3)
rubygem-rdoc-6.10.0 < needs updating (port has 6.11.0)
環境によっては、「ruby32-gems」が依存する、もっとたくさんのものがアップグレード対象になっています。
それで、アップグレードしようとすると。
portupgrade -rR ruby32-gems
[Reading data from pkg(8) ... - 650 packages found - done]
[Gathering depends for devel/ruby-gems ................................................................ done]
[Gathering depends for devel/rubygem-rdoc ............ done]
[Gathering depends for textproc/rubygem-asciidoctor .. done]
[Exclude up-to-date packages ............................. done]
---> Upgrading 'ruby32-gems-3.6.2' to 'ruby32-gems-3.6.3' (devel/ruby-gems)
---> Building '/usr/ports/devel/ruby-gems'
・・・ 略 ・・・
Installing ri documentation for rubygems-3.6.3
ERROR: While executing gem ... (NameError)
uninitialized constant RDoc::Markup::Parser::SPACE_SEPARATED_LETTER_CLASS
/usr/local/lib/ruby/gems/3.2/gems/rdoc-6.10.0/lib/rdoc/markup/parser.rb:221:in 'block in build_paragraph'
/usr/local/lib/ruby/gems/3.2/gems/rdoc-6.10.0/lib/rdoc/markup/parser.rb:221:in 'build_paragraph'
/usr/local/lib/ruby/gems/3.2/gems/rdoc-6.10.0/lib/rdoc/markup/parser.rb:407:in 'parse_text'
・・・ 略 ・・・
/usr/ports/devel/ruby-gems/work/rubygems-3.6.3/lib/rubygems/command_manager.rb:194:in 'process_args'
/usr/ports/devel/ruby-gems/work/rubygems-3.6.3/lib/rubygems/command_manager.rb:152:in 'run'
/usr/ports/devel/ruby-gems/work/rubygems-3.6.3/lib/rubygems/gem_runner.rb:57:in 'run'
setup.rb:36:in '<main>'
*** Error code 1
Stop.
make[1]: stopped in /usr/ports/devel/ruby-gems
*** Error code 1
Stop.
make: stopped in /usr/ports/devel/ruby-gems
egrep: empty (sub)expression
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20250204-13834-cd0i7h env UPGRADE_TOOL=portupgrade UPGRADE_PORT=ruby32-gems-3.6.2 UPGRADE_PORT_VER=3.6.2 make
** Fix the problem and try again.
---> Skipping 'textproc/rubygem-psych' (rubygem-psych-5.2.2) because a requisite package 'ruby32-gems-3.6.2' (devel/ruby-gems) failed (specify -k to force)
---> Skipping 'devel/rubygem-rdoc' (rubygem-rdoc-6.10.0) because a requisite package 'rubygem-psych-5.2.2' (textproc/rubygem-psych) failed (specify -k to force)
** Listing the failed packages (-:ignored / *:skipped / !:failed)
! devel/ruby-gems (ruby32-gems-3.6.2) (unknown build error)
* textproc/rubygem-psych (rubygem-psych-5.2.2)
* devel/rubygem-rdoc (rubygem-rdoc-6.10.0)
てなことになるのです。
3. 対策
あれこれやったのですが・・・。
最終的に。
Installing ri documentation for rubygems-3.6.3
ERROR: While executing gem ... (NameError)
の時点で、エラーになることに着目して。
cd /usr/ports/devel/ruby-gems
make config
上記のチェックを外します。
ドキュメントなくても、実害はないでしょ。
cd /usr/ports/devel/ruby-gems
make clean
make
make reinstall
後は、依存するものをアップグレードして、とりあえず、落ち着きました。
|
       |