Resolving portmaster error "pkg-static: automake-1.16.1 conflicts with automake-wrapper-20131203"
It looks like
automake-wrapper-20131203 has been replaced with
automake-1.16.1 in the FreeBSD 11.1 ports tree. Unfortunately, portmaster is stumbling over the change and failing with an error. If you're receiving the output below, scroll down for the fix:
[root@host /tmp]# portmaster -avw ===>>> Sorting ports by category ===>>> Gathering distinfo list for installed ports ===>>> Starting check of installed ports for available updates ===>>> Root ports: 18 ===>>> automake-wrapper-20131203 ===>>> The devel/automake-wrapper port moved to devel/automake ===>>> Reason: No longer needed ===>>> Launching child to update automake-wrapper-20131203 to automake-1.16.1 ===>>> All >> automake-wrapper-20131203 (1/1) ===>>> The devel/automake-wrapper port moved to devel/automake ===>>> Reason: No longer needed ===>>> Currently installed version: automake-wrapper-20131203 ===>>> Port directory: /usr/ports/devel/automake [...snip checking all installed ports...] ===>>> All >> (1) ===>>> The following actions will be taken if you choose to proceed: Downgrade automake-wrapper-20131203 to automake-1.16.1 ===>>> Proceed? y/n [y] y ===>>> Starting build for ports that need updating <<<=== ===>>> Launching child to install devel/automake ===>>> All >> devel/automake (1/1) ===>>> Port directory: /usr/ports/devel/automake ===>>> Starting check for build dependencies ===>>> Gathering dependency list for devel/automake from ports ===>>> Starting dependency check ===>>> Checking dependency: devel/autoconf ===>>> Checking dependency: lang/perl5.24 ===>>> Checking dependency: ports-mgmt/pkg ===>>> Checking dependency: print/texinfo ===>>> Dependency check complete for devel/automake [...snip compiler output...] ===>>> All >> devel/automake (1/1) ===> Installing for automake-1.16.1 ===> Checking if automake already installed ===> Registering installation for automake-1.16.1 as automatic Installing automake-1.16.1... pkg-static: automake-1.16.1 conflicts with automake-wrapper-20131203 (installs files into the same place). Problematic file: /usr/local/bin/aclocal *** Error code 70 Stop. make: stopped in /usr/ports/devel/automake ===>>> Installation of automake-1.16.1 (devel/automake) failed ===>>> Aborting update ===>>> Update for devel/automake failed ===>>> Aborting update
The snag appears to be that because
/usr/ports/devel/automake-wrapper was deleted from the ports tree, portmaster can't cleanly deinstall
automake-wrapper to replace it with plain old
automake. There are multiple ways to address this.
Fix it using portmaster...
I initially posted the manual steps (below), but a reader contributed an easier fix using portmaster's
[root@host /tmp]# portmaster -o devel/automake devel/automake-wrapper
This tells portmaster that the origin of the port has changed to a different directory, without having to force the issue.
...Or fix it manually
An alternate solution is to manually remove the
automake-wrapper port and then manually install the
[root@host /tmp]# pkg info | grep automake automake-wrapper-20131203 Wrapper script for GNU automake [root@host /tmp]# pkg delete automake-wrapper-20131203 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: automake-wrapper-20131203 Number of packages to be removed: 1 Proceed with deinstalling packages? [y/N]: y [1/1] Deinstalling automake-wrapper-20131203... [1/1] Deleting files for automake-wrapper-20131203: 100% [root@host /tmp]# cd /usr/ports/devel/automake [root@host /usr/ports/devel/automake]# make install ===> Installing for automake-1.16.1 ===> Checking if automake already installed ===> Registering installation for automake-1.16.1 Installing automake-1.1...