[MacPorts] #38630: kerberos5: Undefined symbols: __et_list
MacPorts
noreply at macports.org
Tue Apr 9 15:28:40 PDT 2013
#38630: kerberos5: Undefined symbols: __et_list
---------------------------+----------------------
Reporter: ryandesign@… | Owner: cal@…
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.1.3
Resolution: | Keywords: lion
Port: kerberos5 |
---------------------------+----------------------
Comment (by jeremy.mcmillan@…):
I can confirm on my Lion system it is trying to build
{{{
cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_kerberos5/kerberos5/work/krb5-krb5-da9dc1b/src"
&& /usr/bin/make -j16 -w all
}}}
with no -L to help it find any libcom_err.dylib, especially the
/opt/local/lib/libcom_err.dylib which I confirmed implements the missing
__et_list symbol.
I took a peek at the Makefile, and found it sets an interesting ld option:
-search_paths_first. So then I looked it up and "man ld" yields this
possibly interesting news:
{{{
-search_paths_first
This is now the default (in Xcode4 tools). When
processing
-lx the linker now searches each directory in its library
search paths for `libx.dylib' then `libx.a' before the
moving
on to the next path in the library search path.
-search_dylibs_first
Changes the searching behavior for libraries. The
default is
that when processing -lx the linker searches each
directory
in its library search paths for `libx.dylib' then
`libx.a'.
This option changes the behavior to first search for a
file
of the form `libx.dylib' in each directory in the library
search path, then a file of the form `libx.a' is searched
for
in the library search paths. This option restores the
search
behavior of the linker prior to Xcode4.
}}}
Makefile contains:
{{{LDFLAGS = -arch x86_64 -arch i386 -Wl,-search_paths_first}}}
Maybe I misunderstand, but the new Xcode's default linker option (set
explicitly in the Macport, presumably to make the old Xcode llvm ld behave
as the new one) seems to be set for searching default library paths.
Trouble: $prefix is not defined until later in the Makefile, so I'm not
sure how $prefix/lib should be added to the -L linker options.
--
Ticket URL: <https://trac.macports.org/ticket/38630#comment:2>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list