FreeBSD - メンテナンス・トラブルシュート - ruby - ruby32-gems-3.6.4 → 3.6.7


 クラウディア


1. 概要
2. 状況
3. 対策

1. 概要

 記事を書いているのが、2025年4月14日ですが、発生はもっと前からです。

2. 状況

 下記の状態です。

$ portversion -v | grep '<'
[Reading data from pkg(8) ... - 650 packages found - done]
ruby32-gems-3.6.4           <  needs updating (port has 3.6.7)
rubygem-stringio-3.1.3      <  needs updating (port has 3.1.5)
 「rubygem-stringio」は、「ruby32-gems」に依存するので、アップグレードできていないようです。  「ruby32-gems」をアップグレードしようとすると。

[Reading data from pkg(8) ... - 389 packages found - done]
[Gathering depends for devel/ruby-gems .......................................................... done]
[Gathering depends for textproc/rubygem-asciidoctor .. done]
[Gathering depends for devel/rubygem-rdoc ............ done]
[Exclude up-to-date packages ........................... done]
--->  Upgrading 'ruby32-gems-3.6.4' to 'ruby32-gems-3.6.7' (devel/ruby-gems)
--->  Building '/usr/ports/devel/ruby-gems'
===>  Cleaning for ruby32-gems-3.6.7
===>  License MIT RUBY accepted by the user
===>   ruby32-gems-3.6.7 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by ruby32-gems-3.6.7 for building
===>  Extracting for ruby32-gems-3.6.7
=> SHA256 Checksum OK for ruby/rubygems-3.6.7.tgz.
===>   ruby32-gems-3.6.7 depends on file: /usr/local/bin/ruby32 - found
===>  Patching for ruby32-gems-3.6.7
===>   ruby32-gems-3.6.7 depends on file: /usr/local/bin/ruby32 - found
===>  Applying FreeBSD patches for ruby32-gems-3.6.7 from /usr/ports/devel/ruby-gems/files
===>   ruby32-gems-3.6.7 depends on file: /usr/local/bin/ruby32 - found
===>  Configuring for ruby32-gems-3.6.7
===>  Staging for ruby32-gems-3.6.7
===>   ruby32-gems-3.6.7 depends on file: /usr/local/bin/ruby32 - found
===>   Generating temporary packing list
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/build_info
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/cache

・・・	略	・・・

/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/doc
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/extensions
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/gems
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/plugins
/bin/mkdir -p /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2/specifications
cd /usr/ports/devel/ruby-gems/work/rubygems-3.6.7/ && /usr/bin/env GEM_HOME=/usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.2 /usr/local/bin/ruby32 setup.rb --destdir=/usr/ports/devel/ruby-gems/work/stage  --no-format-executable  --no-regenerate-binstubs  --no-regenerate-plugins
RubyGems 3.6.7 installed
/usr/local/lib/ruby/3.2/rdoc/version.rb:8: warning: already initialized constant RDoc::VERSION
/usr/local/lib/ruby/gems/3.2/gems/rdoc-6.12.0/lib/rdoc/version.rb:8: warning: previous definition of VERSION was here
/usr/local/lib/ruby/3.2/rdoc.rb:70: warning: already initialized constant RDoc::VISIBILITIES

・・・	略	・・・

/usr/local/lib/ruby/gems/3.2/gems/rdoc-6.12.0/lib/rdoc.rb:94: warning: previous definition of CONSTANT_MODIFIERS was here
/usr/local/lib/ruby/3.2/rdoc.rb:101: warning: already initialized constant RDoc::METHOD_MODIFIERS
/usr/local/lib/ruby/gems/3.2/gems/rdoc-6.12.0/lib/rdoc.rb:99: warning: previous definition of METHOD_MODIFIERS was here
Parsing documentation for rubygems-3.6.7
Couldn't find file to include 'doc/net-http/examples.rdoc' from lib/rubygems/vendor/net-http/lib/net/http.rb
Couldn't find file to include 'doc/net-http/examples.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/generic_request.rb
Couldn't find file to include 'doc/net-http/examples.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/header.rb
Couldn't find file to include 'doc/net-http/examples.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/response.rb
Couldn't find file to include 'doc/net-http/included_getters.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/responses.rb
Couldn't find file to include 'doc/net-http/included_getters.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/responses.rb
Couldn't find file to include 'doc/net-http/included_getters.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/responses.rb

・・・	略	・・・

Couldn't find file to include 'doc/net-http/included_getters.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/responses.rb
Couldn't find file to include 'doc/net-http/included_getters.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/responses.rb
Couldn't find file to include 'doc/net-http/included_getters.rdoc' from lib/rubygems/vendor/net-http/lib/net/http/responses.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse.rb
Couldn't find file to include '../../doc/optparse/creates_option.rdoc' from lib/rubygems/vendor/optparse/lib/optparse/kwargs.rb
Installing ri documentation for rubygems-3.6.7
ERROR:  While executing gem ... (NameError)
    uninitialized constant RDoc::Markup::Parser::SPACE_SEPARATED_LETTER_CLASS
        /usr/local/lib/ruby/gems/3.2/gems/rdoc-6.12.0/lib/rdoc/markup/parser.rb:221:in 'block in build_paragraph'
        /usr/local/lib/ruby/gems/3.2/gems/rdoc-6.12.0/lib/rdoc/markup/parser.rb:221:in 'build_paragraph'
        /usr/local/lib/ruby/gems/3.2/gems/rdoc-6.12.0/lib/rdoc/markup/parser.rb:407:in 'parse_text'

・・・	略	・・・

        /usr/ports/devel/ruby-gems/work/rubygems-3.6.7/lib/rubygems/command_manager.rb:194:in 'process_args'
        /usr/ports/devel/ruby-gems/work/rubygems-3.6.7/lib/rubygems/command_manager.rb:152:in 'run'
        /usr/ports/devel/ruby-gems/work/rubygems-3.6.7/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/portupgrade20250414-88125-u89rgp env UPGRADE_TOOL=portupgrade UPGRADE_PORT=ruby32-gems-3.6.4 UPGRADE_PORT_VER=3.6.4 make
** Fix the problem and try again.
--->  Skipping 'devel/rubygem-stringio' (rubygem-stringio-3.1.3) because a requisite package 'ruby32-gems-3.6.4' (devel/ruby-gems) failed (specify -k to force)
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! devel/ruby-gems (ruby32-gems-3.6.4)   (unknown build error)
        * devel/rubygem-stringio (rubygem-stringio-3.1.3)
 てなことになるのです。

3. 対策

 どうも、「rubygem-rdoc」がネックになっているようです。  なので。

cd /usr/ports/devel/rubygem-rdoc
make deinstall clean
 必要であれば、後で、インストールすればいいのでね。  その上で。

cd /usr/ports/devel/ruby-gems
make
make reinstall

portupgrade -rR rubygem-stringio
 うまくいきました。

ハイスピードプランそれがだいじWi-Fi