pkg・ports アップデート関連 - glib - glib-2.82.4_1,2 → 2.84.1,2


 クラウディア


1. 概要
2. 状況
3. 対応
4. 補足
5. 参考サイト

1. 概要

 発生は、2025年4月16日。  ここんとこ、「glib」は、トラブル続きです。

2. 状況

 下記の状況にありまして。

$ portversion -v | grep "<"
[Reading data from pkg(8) ... - 388 packages found - done]
glib-2.82.4_1,2             <  needs updating (port has 2.84.1,2)
gobject-introspection-1.82.0_1,1  <  needs updating (port has 1.84.0,1)
 これは、「FreeBSD 13.5 RELEASE」「FreeBSD 14.2 RELEASE」ともに発生している状況です。

portupgrade -rR glib
 は、以下で停止します。

[Reading data from pkg(8) ... - 412 packages found - done]
[Gathering depends for devel/glib20 ................................................................................... done]
[Gathering depends for graphics/librsvg2-rust ......................................................................... done]
[Gathering depends for graphics/libheif ............................................................................... done]
[Gathering depends for accessibility/at-spi2-core ................. done]

・・・	略	・・・

===>  Extracting for glib-2.84.1,2
=> SHA256 Checksum OK for gnome/glib-2.84.1.tar.xz.
===>   glib-2.84.1,2 depends on file: /usr/local/gobject-introspection-bootstrap/bin/g-ir-scanner - not found
===>   glib-2.84.1,2 depends on file: /usr/local/gobject-introspection-bootstrap/bin/g-ir-scanner - not found
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/glib20
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/glib20
egrep: empty (sub)expression
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20250416-69098-1u9bj0 env UPGRADE_TOOL=portupgrade UPGRADE_PORT=glib-2.82.4_1,2 UPGRADE_PORT_VER=2.82.4_1,2 make
** Fix the problem and try again.
--->  Skipping 'devel/gobject-introspection' (gobject-introspection-1.82.0_1,1) because a requisite package 'glib-2.82.4_1,2' (devel/glib20) failed (specify -k to force)
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! devel/glib20 (glib-2.82.4_1,2)        (unknown build error)
        * devel/gobject-introspection (gobject-introspection-1.82.0_1,1)
 「gobject-introspection」側からやると。

portupgrade -rR gobject-introspection

[Reading data from pkg(8) ... - 412 packages found - done]
[Gathering depends for devel/gobject-introspection .................................................................... done]
[Exclude up-to-date packages .......................... done]
--->  Upgrading 'glib-2.82.4_1,2' to 'glib-2.84.1,2' (devel/glib20)
--->  Building '/usr/ports/devel/glib20'
===>  Cleaning for gobject-introspection-1.84.0,1
===>  Cleaning for glib-2.84.1,2
===>  Cleaning for glib-2.84.1,2
===>  License LGPL20 accepted by the user
===>   glib-2.84.1,2 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by glib-2.84.1,2 for building
===>  Extracting for glib-2.84.1,2
=> SHA256 Checksum OK for gnome/glib-2.84.1.tar.xz.
===>   glib-2.84.1,2 depends on file: /usr/local/gobject-introspection-bootstrap/bin/g-ir-scanner - not found
===>   glib-2.84.1,2 depends on file: /usr/local/gobject-introspection-bootstrap/bin/g-ir-scanner - not found
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/glib20
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/glib20
egrep: empty (sub)expression
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20250416-81902-7dhrxl env UPGRADE_TOOL=portupgrade UPGRADE_PORT=glib-2.82.4_1,2 UPGRADE_PORT_VER=2.82.4_1,2 make
** Fix the problem and try again.
--->  Skipping 'devel/gobject-introspection' (gobject-introspection-1.82.0_1,1) because a requisite package 'glib-2.82.4_1,2' (devel/glib20) failed (specify -k to force)
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! devel/glib20 (glib-2.82.4_1,2)        (unknown build error)
        * devel/gobject-introspection (gobject-introspection-1.82.0_1,1)
 結局。

/usr/local/gobject-introspection-bootstrap/bin/g-ir-scanner
 ちゅうのがないので、どうにもならんということのようです。

3. 対応

 とりあえず、「gobject-introspection」の方は、参考サイトのおかげで、なんとかなりました。

portupgrade -f gobject-introspection
 しかし、「glib」の方は、「-f」でやっても同じ現象のままです。  最終的に、参考サイトのおかげで、解決しました。  この時点で、2025年6月6日。  「glib」のバージョンもさらに変わっておりました。

$ portversion -v | grep "&lt;"
[Reading data from pkg(8) ... - 738 packages found - done]
glib-2.82.4_1,2             <  needs updating (port has 2.84.1_2,2)
 参考サイトのとおりにします。

cd /usr/ports/devel/gobject-introspection

make FLAVOR=bootstrap install clean

cd ../glib20

make

make reinstall

4. 補足

 これで、うまくアップグレードできたと思いきや。  他のパッケージをアップグレードしようとするときに。

$ portversion -v | grep '<'
[Reading data from pkg(8) ... - 740 packages found - done]
libgit2-1.9.0               <  needs updating (port has 1.9.1)
vulkan-headers-1.4.316      <  needs updating (port has 1.4.317)
vulkan-loader-1.4.316       <  needs updating (port has 1.4.317)

$ portupgrade -rR vulkan-loader
[Reading data from pkg(8) ... - 740 packages found - done]
[Gathering depends for graphics/vulkan-loader ......................................................................... done]
[Gathering depends for multimedia/ffmpeg .............................................................................. done]
** Duplicated origin - devel/gobject-introspection: gobject-introspection-1.84.0,1 gobject-introspection-bootstrap-1.84.0,1
** Run 'pkgdb -F' to interactively fix them.
 てなことになるので。

$ pkg check
Checking all packages:   2%
Checking all packages: 100%
 として、もう一度、同じことをやっても同様になります。  仕方ないので。

pkg delete gobject-introspection-bootstrap

Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        gobject-introspection-bootstrap: 1.84.0,1

Number of packages to be removed: 1

The operation will free 4 MiB.

Proceed with deinstalling packages? [y/N]: y
[1/1] Deinstalling gobject-introspection-bootstrap-1.84.0,1...
[1/1] Deleting files for gobject-introspection-bootstrap-1.84.0,1: 100%
 もうひとつ。

pkg delete glib-bootstrap

Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        glib-bootstrap: 2.84.1_2,2

Number of packages to be removed: 1

The operation will free 17 MiB.

Proceed with deinstalling packages? [y/N]: y
[1/1] Deinstalling glib-bootstrap-2.84.1_2,2...
[1/1] Deleting files for glib-bootstrap-2.84.1_2,2: 100%
 これで、一応、他のパッケージもアップグレードできるようになりました。  次回の「glib」アップグレード時も、同じようなことが起きるかと思います。  同様の手順でいけるのかしら?

5. 参考サイト

 本ページは、下記のサイトを参考にさせていただきました。
glib-2.84.1_2,2 depends on file: /usr/local/gobject-introspection-bootstrap/bin/g-ir-scanner - not found」
「why cannot g-ir-scanner be found ?

AbemaTV 無料体験