[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Libtool 1.5 on MacOS X

From: Bill Northcott
Subject: Re: Libtool 1.5 on MacOS X
Date: Sat, 31 May 2003 09:22:27 +1000

Another member of our group suggested:
> Before installing libtool 1.5, go through the libtool.m4 and change all
> the stuff
> that says:
> if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then \
> to:
> if true; then
> Then rerun libtool's `bootstrap', and reisntall.
> The basic problem is that libtool uses the info from "gcc -v" to do
> Darwin things if it sees "Apple".   GCC 3.3 doesn't report "Apple".

This sounds very plausible to me.  It would explain why I have not had 
trouble building other gnu tools using Apple's compiler.
I will test it and report back before sending the complete log.

The $CC -v | grep 'Apple' will only work if you are using the Apple 
compiler.  Mac hackers like us may well be using a compiler built from FSF 
sources.  We do it because we need to use the GNU Objective-C runtime and 
the -fgnu-runtime flag crashes Apple's compilers:-(  Others may may use 
FSF sources for the languages not included in the Apple builds such as 
f77, ada etc.. 

The fix suggested above is obviously an OS specific kluge.  It seems to me 
that libtool needs to know the linker, not the compiler.  It would be 
better to use "if cc -v 2>&1..." which would test the default compiler, 
but that could still be defeated by the PATH setting.  Unfortunately 
Apple's ld has no version option.  The test I have used is to check for 
MacOS X is uname = 'Darwin'.  This may give a problem with old Rhapsody 
versions of the OS but you could test version as well.  On my machines:
[pbg4-12bn:macosx/swarmx/build] billn% uname -v
Darwin Kernel Version 6.6: Thu May  1 21:48:54 PDT 2003; 

"Peter O'Gorman" <address@hidden> wrote on 30/05/2003 10:41:14 PM:

> Could you possible run this again in this directory (preferably with
> all the .o's present in the .libs dir) using `"make SHELL=/bin/sh -x"
> >& log.txt' and send me the log.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]