[MacPorts] #44346: Selfupdate fails with Undefined symbols for architecture x86_64: "_rl_username_completion_function"
MacPorts
noreply at macports.org
Wed Jul 16 07:01:06 PDT 2014
#44346: Selfupdate fails with Undefined symbols for architecture x86_64:
"_rl_username_completion_function"
---------------------------------+--------------------------------
Reporter: bugmail-macports@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: base | Version: 2.3.1
Resolution: | Keywords:
Port: |
---------------------------------+--------------------------------
Comment (by bugmail-macports@…):
Thanks for your answer.
Indeed I have a couple of readline.h around, but not in /usr/local:
{{{
locate readline.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/editline/readline.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/readline/readline.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/editline/readline.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/readline/readline.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/include/editline/readline.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/include/readline/readline.h
/opt/local/include/editline/readline.h
/opt/local/include/readline/readline.h
/opt/local/share/doc/readline/html/readline.html
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base/src/pextlib1.0/readline.h
/usr/include/editline/readline.h
/usr/include/readline/readline.h
}}}
The ones in /usr/include/editline/ and /opt/local/include/*line/ all have
the same signature (that of the Xcode for MacOSX10.9.sdk):
{{{
/* $NetBSD: readline.h,v 1.33 2012/05/15 17:30:04 christos Exp $ */
}}}
{{{
SHA1(/opt/local/include/editline/readline.h)=
36d79499fa4b1cb5885596d8b6feae802283a0c3
SHA1(/usr/include/readline/readline.h)=
36d79499fa4b1cb5885596d8b6feae802283a0c3
SHA1(/usr/include/editline/readline.h)=
36d79499fa4b1cb5885596d8b6feae802283a0c3
}}}
while that in /opt/local/include/readline comes from the FSF:
{{{
#define RL_READLINE_VERSION 0x0603 /* Readline 6.3 */
}}}
{{{
SHA1(/opt/local/include/readline/readline.h)=
eb43dd1ba2d57d996666c22cb13d31d9fedd485c
}}}
It's a big mess, not surprising it doesn't work.
I also have multiple libreadline:
{{{
locate libreadline
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libreadline.dylib
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib/libreadline.dylib
/Library/Frameworks/R.framework/Versions/2.15/Resources/lib/libreadline.5.2.dylib
/Library/Frameworks/R.framework/Versions/2.15/Resources/lib/libreadline.dylib
/Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libreadline.5.2.dylib
/Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libreadline.dylib
/Library/Frameworks/R.framework/Versions/3.1/Resources/lib/libreadline.5.2.dylib
/Library/Frameworks/R.framework/Versions/3.1/Resources/lib/libreadline.dylib
/opt/local/lib/libreadline.6.2.dylib
/opt/local/lib/libreadline.6.3.dylib
/opt/local/lib/libreadline.6.dylib
/opt/local/lib/libreadline.a
/opt/local/lib/libreadline.dylib
/usr/lib/libreadline.dylib
}}}
The one in /usr/lib doesn't contain _rl_username_completion_function. I
attach it in nm.txt.
Ok, then I tried to move /opt/local/include/*line and /usr/include/*line
away but I get a different error:
{{{
-I/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base/src
-I.
-I/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base/vendor
/vendor-destroot//opt/local/libexec/macports/include -fno-common
sha256cmd.c -o sha256cmd.o
/usr/bin/cc -c -DUSE_TCL_STUBS -DTCL_NO_DEPRECATED -g -O2 -std=c99 -Wextra
-Wall -pedantic -DHAVE_CONFIG_H
-I/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base/src
-I/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base/src
-I.
-I/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base/vendor
/vendor-destroot//opt/local/libexec/macports/include -fno-common
readline.c -o readline.o
readline.c: In function 'completion_generator':
readline.c:66:6: error: 'completion_interp' undeclared (first use in this
function)
if (completion_interp && generator_word) {
^
}}}
Apparently it is missing some headers... which one should I have kept?
--
Ticket URL: <https://trac.macports.org/ticket/44346#comment:2>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list