[MacPorts] ProblemHotlist modified

MacPorts noreply at macports.org
Sat Sep 5 15:51:55 PDT 2015


Page "ProblemHotlist" was changed by ryandesign at macports.org
Diff URL: <https://trac.macports.org/wiki/ProblemHotlist?action=diff&version=122>
Revision 122
Comment: Add ncurses 6 / readline / gawk problem
Changes:
-------8<------8<------8<------8<------8<------8<------8<------8<--------
Index: ProblemHotlist
=========================================================================
--- ProblemHotlist (version: 121)
+++ ProblemHotlist (version: 122)
@@ -47,6 +47,30 @@
 indicates that your `install_name_tool` or `strip` commands (both are part of the Xcode command line tools) are too old to deal with the types of objects produced by the compiler. (The number after "unknown load command" may be different.) This can happen if you have forgotten to [https://guide.macports.org/chunked/installing.xcode.html update the Xcode command line tools] to a version designed for your version of OS X.
 
 
+== Build failures after upgrading to ncurses 6 == #ncurses6
+
+After upgrading ncurses to version 6, a port may fail to build, with the following error message in the main.log or config.log file:
+
+{{{
+dyld: Library not loaded: /opt/local/lib/libncurses.5.dylib
+  Referenced from: /opt/local/lib/libreadline.6.dylib
+  Reason: no suitable image found.  Did find:
+	/usr/lib/libncurses.5.dylib: no matching architecture in universal wrapper
+}}}
+
+The solution is to upgrade readline:
+
+{{{
+sudo port upgrade readline
+}}}
+
+Then clean the port that originally failed to build, and try to build it again.
+
+The problem occurs when building ports that use an autotools-based configure script, after having upgraded ncurses to version 6 but before having upgraded readline to use ncurses 6. The reason the problem occurs is that part of the boilerplate that autotools bakes into every configure script is to locate an awk implementation. The first one it checks for is gawk, so if the gawk port happens to be installed, a configure script will try to use that. gawk depends on readline, which depends on ncurses, and if you have upgraded ncurses but haven't upgraded readline to use the new ncurses, then gawk will be broken.
+
+MacPorts usually upgrades dependencies first, so you wouldn't see this problem if gawk were listed as a dependency of the port that failed to build. But we don't want to add unnecessary gawk dependencies to thousands of configure-based ports when the awk implementation that's part of OS X would work just as well.
+
+
 == Incompatible library version: X requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0 == #libiconv-version
 
 You might see this error when running a program, or in the main.log or config.log when a port fails to configure or build:
-------8<------8<------8<------8<------8<------8<------8<------8<--------

--
Page URL: <https://trac.macports.org/wiki/ProblemHotlist>
MacPorts <https://www.macports.org/>
Ports system for OS X

This is an automated message. Someone added your email address to be
notified of changes on 'ProblemHotlist' page.
If it was not you, please report to .


More information about the macports-changes mailing list