- 1. 概要
- 2. 現象
- 3. 対処
- 4. 参考サイト
1. 概要
発生は、2026年10月14日。
2. 現象
portversion -v | grep '<'
の結果。
[Reading data from pkg(8) ... - 683 packages found - done]
ffmpeg-9.0.2_1,1 < needs updating (port has 9.0.2_2,1)
fftw3-3.3.10_5 < needs updating (port has 3.3.11)
fftw3-float-3.3.10_5 < needs updating (port has 3.3.11)
graphite2-1.3.15 < needs updating (port has 1.3.15_1)
graphviz-16.1.0 < needs updating (port has 16.1.0_1)
libdvdcss-1.5.0 < needs updating (port has 1.6.0)
libheif-1.22.2_4 < needs updating (port has 1.23.6)
py312-sqlite3-3.12.14_10 < needs updating (port has 3.15.0_10)
x265-4.2 < needs updating (port has 4.3)
という状態にありまして。
env BATCH=yes portupgrade -rR ffmpeg
すると。
[Reading data from pkg(8) ... - 683 packages found - done]
[Gathering depends for multimedia/ffmpeg ............................................................................................./usr/local/sbin/portupgrade:894:in 'get_all_depends': recursive dependency (RecursiveDependencyError)
from /usr/local/sbin/portupgrade:917:in 'block in get_all_depends'
from /usr/local/lib/ruby/3.3/set.rb:501:in 'each_key'
from /usr/local/lib/ruby/3.3/set.rb:501:in 'each'
・・・ 略 ・・・
from /usr/local/sbin/portupgrade:621:in 'each'
from /usr/local/sbin/portupgrade:621:in 'block (3 levels) in main'
from /usr/local/sbin/portupgrade:594:in 'catch'
from /usr/local/sbin/portupgrade:594:in 'block (2 levels) in main'
from /usr/local/lib/ruby/3.3/optparse.rb:1707:in 'block (2 levels) in parse_in_order'
from /usr/local/lib/ruby/3.3/optparse.rb:1702:in 'catch'
from /usr/local/lib/ruby/3.3/optparse.rb:1702:in 'block in parse_in_order'
from /usr/local/lib/ruby/3.3/optparse.rb:1636:in 'catch'
from /usr/local/lib/ruby/3.3/optparse.rb:1636:in 'parse_in_order'
from /usr/local/lib/ruby/3.3/optparse.rb:1630:in 'order!'
from /usr/local/lib/ruby/3.3/optparse.rb:1621:in 'order'
from /usr/local/sbin/portupgrade:571:in 'block in main'
from /usr/local/lib/ruby/3.3/optparse.rb:1153:in 'initialize'
from /usr/local/sbin/portupgrade:238:in 'new'
from /usr/local/sbin/portupgrade:238:in 'main'
from /usr/local/sbin/portupgrade:2380:in '<main>'
てなことになるのです。
3. 対処
前項の現象は、「-rR」オプションで、依存関係を参照するときに、循環参照が発生して解決できなくなっているせいだそうで。
上記現象が、発生する「ports」については。
env BATCH=yes portupgrade ffmpeg
と依存関係を省略して、ひとつに絞ってアップグレードすると、うまく通ります。
4. 参考サイト
本ページは、「Gemini」伍長を参考にさせていただきました。
|
|