1. 概要
発生は、2023年3月3日です。
2. アップグレードしてみる
$ pkg version -vl "<"
at-spi2-core-2.44.1 < needs updating (index has 2.46.0)
これをアップグレードしようとすると
$ portupgrade -rR at-spi2-core
[Reading data from pkg(8) ... - 559 packages found - done]
[Gathering depends for accessibility/at-spi2-core .............................................................. done]
[Exclude up-to-date packages ................................................................................... done]
---> Upgrading 'at-spi2-core-2.44.1' to 'at-spi2-core-2.46.0' (accessibility/at-spi2-core)
---> Building '/usr/ports/accessibility/at-spi2-core'
・・・ 略 ・・・
Installing at-spi2-core-2.46.0...
pkg-static: at-spi2-core-2.46.0 conflicts with at-spi2-atk-2.38.0 (installs files into the same place). Problematic file: /usr/local/include/at-spi2-atk/2.0/atk-bridge.h
*** Error code 1
Stop.
make[1]: stopped in /usr/ports/accessibility/at-spi2-core
*** Error code 1
Stop.
make: stopped in /usr/ports/accessibility/at-spi2-core
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20230303-97799-o9eee3 env UPGRADE_TOOL=portupgrade UPGRADE_PORT=at-spi2-core-2.44.1 UPGRADE_PORT_VER=2.44.1 make reinstall
---> Restoring the old version
Installing at-spi2-core-2.44.1...
Extracting at-spi2-core-2.44.1: 100%
** Fix the installation problem and try again.
** Package origin of 'at-spi2-atk' has been changed: 'accessibility/at-spi2-atk' -> 'accessibility/at-spi2-core'
---> Skipping 'accessibility/at-spi2-core' (at-spi2-atk-2.38.0) because it has already failed
** Listing the failed packages (-:ignored / *:skipped / !:failed)
! accessibility/at-spi2-core (at-spi2-core-2.44.1) (install error)
* accessibility/at-spi2-core (at-spi2-atk-2.38.0)
どうも「at-spi2-core-2.44.1」を「2.46.0」へアップグレードしようとしているのに、「2.38.0」の
/usr/local/include/at-spi2-atk/2.0/atk-bridge.h
が存在してるっちゅうんですな。
それが、「conflicts」となって、インストールできまへん・・・と。
そんで、上記のヘッダファイルを削除して、同じことをやっても、同じエラーになる。
単純にひとつのファイルを削除しても、同じことになるようです。
3. 対処
「at-spi2-atk」を探してみると
$ whereis at-spi2-atk
at-spi2-atk:
ん?「ports」には、ないようです。
「pkg」で探してみると
$ pkg search at-spi2-atk
at-spi2-atk-2.38.0 Assisted Technology Provider module for GTK+
linux-c7-at-spi2-atk-2.26.2 Assistive technology ATK bridge (Linux CentOS 7.9.2009)
「pkg」で消してみます。
$ pkg delete at-spi2-atk
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the u niverse):
Installed packages to be REMOVED:
at-spi2-atk: 2.38.0
Number of packages to be removed: 1
Proceed with deinstalling packages? [y/N]: y
[1/1] Deinstalling at-spi2-atk-2.38.0...
[1/1] Deleting files for at-spi2-atk-2.38.0: 0%
at-spi2-atk-2.38.0: missing file /usr/local/include/at-spi2-atk/2.0/atk-bridge.h
[1/1] Deleting files for at-spi2-atk-2.38.0: 100%
アップグレードします。
$ portupgrade -rR at-spi2-core
・・・ 略 ・・・
Installing at-spi2-core-2.46.0...
pkg-static: at-spi2-core-2.46.0 conflicts with atk-2.38.0 (installs files into the same place). Problematic file: /usr/local/include/atk-1.0/atk/atk-autocleanups.h
*** Error code 1
Stop.
make[1]: stopped in /usr/ports/accessibility/at-spi2-core
*** Error code 1
Stop.
make: stopped in /usr/ports/accessibility/at-spi2-core
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20230303-9840-y3nmqf env UPGRADE_TOOL=portupgrade UPGRADE_PORT=at-spi2-core-2.44.1 UPGRADE_PORT_VER=2.44.1 make reinstall
---> Restoring the old version
Installing at-spi2-core-2.44.1...
Extracting at-spi2-core-2.44.1: 100%
** Fix the installation problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
! accessibility/at-spi2-core (at-spi2-core-2.44.1) (install error)
今度は、「atk」ですと。
「at-spi2-atk」と同じように調べて
$ pkg delete atk
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:
atk: 2.38.0
Number of packages to be removed: 1
The operation will free 2 MiB.
Proceed with deinstalling packages? [y/N]: y
[1/1] Deinstalling atk-2.38.0...
[1/1] Deleting files for atk-2.38.0: 100%
これでやっと
portupgrade -rR at-spi2-core
が、すんなり通りました。