[MacPorts] #38985: kerberos5 fails on compile_et (10.6.8)
MacPorts
noreply at macports.org
Sat May 11 12:12:17 PDT 2013
#38985: kerberos5 fails on compile_et (10.6.8)
------------------------+--------------------------------
Reporter: mtb19@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.1.3
Resolution: | Keywords:
Port: kerberos5 |
------------------------+--------------------------------
Comment (by luc.fabresse@…):
Hi Cal,
>So this is likely a case of http://llvm.org/bugs/show_bug.cgi?id=8971.
It seems we really shouldn't be relying on CPATH anyway.
ok good to know. Thanks.
>I agree specifying -I. -I.. -I$prefix/lib might be a way to fix this
without relying on CPATH. I will look into this.
>Are you saying the build process directly installs files in
/opt/local/lib without going through destroot?
>Are you seeing this when you run sudo port destroot kerberos5, too?
Ok, before recompiling, I ensured that /opt/local/lib does not contains
libkrb*.dylib.
Otherwise, the compiling may pass by linking to those libs if they
contains both arch i386 and x86_64.
Or the linking may fail because those libs does only contain one arch and
not the one needed to achieve the linking.
So let's remove them before.
{{{
$ sudo port uninstall -f kerberos5
$ ls -1 /opt/local/lib/libkrb* | wc -l
ls: /opt/local/lib/libkrb*: No such file or directory
0
}}}
Then, I also checked that the two lines below are commented in the Port
file (otherwise it fails at configuration stage)
{{{
# configure.cppflags-delete -I${prefix}/include
# configure.ldflags-delete -L${prefix}/lib
}}}
An I did the compile through destroot:
{{{
$ sudo port destroot kerberos5
Portfile changed since last build; discarding previous state.
---> Computing dependencies for kerberos5
---> Fetching distfiles for kerberos5
---> Verifying checksum(s) for kerberos5
---> Extracting kerberos5
---> Applying patches to kerberos5
---> Configuring kerberos5
---> Building kerberos5
---> Staging kerberos5 into destroot
}}}
Everything seems ok.
{{{
$ file
/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/kerberos5/work/destroot/opt/local/lib/libkrb5.3.3.dylib
/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/kerberos5/work/destroot/opt/local/lib/libkrb5.3.3.dylib:
Mach-O universal binary with 2 architectures: [x86_64: Mach-O 64-bit
x86_64 dynamically linked shared library] [i386]
}}}
New compiled lib is ok.
And the funny thing is that now doing:
{{{
$ sudo port install kerberos5
}}}
works like a charm. I suppose that it copied libs from the destroot dir?
> If yes, this is either a bug in the Portfile (or the part where it
handles +universal) or kerberos' build system.
no idea.
> Can you please test whether http://trac.macports.org/changeset/105939
r105939 resolves the issue for you?
no. I get a checksum problem because of a patch being applied I might
understood.
I forgot to save the main.log and lost it.
Finally, now if I clean everything and keep the the two lines removed in
the PortFile, it builds and installs perfectly.
I do not understand why I cannot reproduce the error I got multiple times
yesterday about libs with one arch in /opt/local/lib...
Cheers,
#Luc
--
Ticket URL: <https://trac.macports.org/ticket/38985#comment:13>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list