いままでは、upgradeでエラーになる→しばらくの間我慢する→我慢できなくなってMacPortsごと再インスコ
でしたが、さすがに手間かかりすぎるので、別の方法をとることにした。
とりあえず、問題になっているものを強制再インストールしてみる。基本的にport -f uninstall <名前> と port install <名前>
今までもこういう風にやっておけば、時間の短縮になるし、勉強にもなったかもしれないな。
ちなみに明示的にインストールしているものは以下にリストしている。
% sudo port upgrade installed ---> Configuring cyrus-sasl2 Error: cyrus-sasl2 will not build when another version is active. Error: Please deactivate or uninstall cyrus-sasl2, and then install Error: the new version with `sudo port install cyrus-sasl2`. Error: Target org.macports.configure returned: cyrus-sasl2 upgrade failed Error: Unable to upgrade port: 1 ---> Configuring cyrus-sasl2 Error: cyrus-sasl2 will not build when another version is active. Error: Please deactivate or uninstall cyrus-sasl2, and then install Error: the new version with `sudo port install cyrus-sasl2`. Error: Target org.macports.configure returned: cyrus-sasl2 upgrade failed Error: Unable to upgrade port: 1 ---> Configuring cyrus-sasl2 Error: cyrus-sasl2 will not build when another version is active. Error: Please deactivate or uninstall cyrus-sasl2, and then install Error: the new version with `sudo port install cyrus-sasl2`. Error: Target org.macports.configure returned: cyrus-sasl2 upgrade failed Error: Unable to upgrade port: 1 ---> Configuring cyrus-sasl2 Error: cyrus-sasl2 will not build when another version is active. Error: Please deactivate or uninstall cyrus-sasl2, and then install Error: the new version with `sudo port install cyrus-sasl2`. Error: Target org.macports.configure returned: cyrus-sasl2 upgrade failed Error: Unable to upgrade port: 1 [~] <ttys001> % sudo port -f uninstall cyrus-sasl2 ---> Unable to uninstall cyrus-sasl2 2.1.21_0+kerberos, the following ports depend on it: ---> subversion ---> subversion-perlbindings Warning: Uninstall forced. Proceeding despite dependencies. ---> Deactivating cyrus-sasl2 @2.1.21_0+kerberos ---> Uninstalling cyrus-sasl2 @2.1.21_0+kerberos [~] <ttys001> % sudo port install cyrus-sasl2 ---> Configuring cyrus-sasl2 ---> Building cyrus-sasl2 ---> Staging cyrus-sasl2 into destroot ---> Installing cyrus-sasl2 @2.1.22_0+kerberos ---> Activating cyrus-sasl2 @2.1.22_0+kerberos ---> Cleaning cyrus-sasl2
upgradeでエラーでなくなりました。