bashの更新エラー

portsからのbashアップデートエラーの直し方。

内容

portsからbash 5.2_2にアップデートしようとすると、次のエラーが出て更新できない。

===>  Cleaning for bash-5.2_2
===>  bash-5.2_2 is marked as broken: ld: error: undefined symbol:
rl_trim_arg_from_keyseq.
*** Error code 1

対処法

次のようにしてconfigを削除してから入れ直す。

# cd /usr/ports/shells/bash
# make rmconfig
# portmaster shells/bash

devel/readlineのバージョンが古すぎるため、最新のbashではOSデフォルトのreadlineライブラリを使用するようにしたとのこと。/usr/ports/UPDATINGに記載があった。

0221002:
AFFECTS: users of shells/bash
AUTHOR: ehaupt@FreeBSD.org

Bash has been updated to version 5.2. In previous versions, the default port
option-set used to link against libreadline from ports. However, the current
version of devel/readline is too old for bash 5.2.

For now, the default option has been switched to use the bundled version of
libreadline and the other option is marked broken. Once devel/readline is
updated this can be reverted.

If you’re updating bash from source and you’ve previously explicitly set to
use use PORTS_READLINE, you’ll have to disable the PORTS_READLINE option
before updating:

# cd /usr/ports/shells/bash
# make config

or flush it entirely:

# cd /usr/ports/shells/bash
# make rmconfig

/usr/ports/UPDATING

cf. Bug 266762 – shells/bash: bash-5.2_2 is marked as broken: ld: error: undefined symbol: rl_trim_arg_from_keyseq

タイトルとURLをコピーしました