From: Ron Garret
Subject: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-F71700.15033108052007@news.gha.chartermi.net>
Has anyone successfully built the Boehm GC on OS X 10.4?  I've tried 
every version up to and including 7.0alpha7 and they all fail the self 
test.  (I'm running on a Macbook Pro, i.e. a Core2 duo.)

Failing that, are there any other GC libraries floating around out there 
that might work instead?

Thanks,
rg

From: llothar
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <1178688425.405523.104490@e51g2000hsg.googlegroups.com>
On 9 Mai, 05:03, Ron Garret <·········@flownet.com> wrote:
> Has anyone successfully built the Boehm GC on OS X 10.4?  I've tried
> every version up to and including 7.0alpha7 and they all fail the self
> test.  (I'm running on a Macbook Pro, i.e. a Core2 duo.)
>
> Failing that, are there any other GC libraries floating around out there
> that might work instead?


You need to get the CVS version, there were a lot of hacks for MacOSX
in the past.

Unfortunately it depends also on the XCode version you use. There are
a few problems (caused by the Apple side), in that there isn't a 100%
reliable way to get the CPU registeres. They changed the API for this
a few times.

I haven't seen any other reliable plug-in GC. You need to google a
litte bit, because a few years back there was an announcement about a
reliable mark-and-copy collector but it needs a lot of help from the
code generator.
From: Rayiner Hashem
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <1178775575.502187.21240@q75g2000hsh.googlegroups.com>
> You need to get the CVS version, there were a lot of hacks for MacOSX
> in the past.

Are you sure? The latest 6.x series release works just fine on my
MacBook. I've been using it in OpenDylan for several months with no
incident.
From: Ron Garret
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-99DCF0.16501610052007@news.gha.chartermi.net>
In article <·······················@q75g2000hsh.googlegroups.com>,
 Rayiner Hashem <·······@gmail.com> wrote:

> > You need to get the CVS version, there were a lot of hacks for MacOSX
> > in the past.
> 
> Are you sure? The latest 6.x series release works just fine on my
> MacBook. I've been using it in OpenDylan for several months with no
> incident.

What flavor of Macbook are you using?  Does it pass the self-tests?

rg
From: Rayiner Hashem
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <1178845125.982448.281520@y5g2000hsa.googlegroups.com>
> What flavor of Macbook are you using?  Does it pass the self-tests?
>
> rg

I just noticed that you have to build with --disable-threads to allow
"make check" to pass. I guess I never noticed it since I don't use it
multithreaded.
From: Ron Garret
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-56CA42.18045110052007@news.gha.chartermi.net>
In article <························@y5g2000hsa.googlegroups.com>,
 Rayiner Hashem <·······@gmail.com> wrote:

> > What flavor of Macbook are you using?  Does it pass the self-tests?
> >
> > rg
> 
> I just noticed that you have to build with --disable-threads to allow
> "make check" to pass. I guess I never noticed it since I don't use it
> multithreaded.

Thanks!!!

rg
From: Ron Garret
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-F69389.10495911052007@news.gha.chartermi.net>
In article <························@y5g2000hsa.googlegroups.com>,
 Rayiner Hashem <·······@gmail.com> wrote:

> > What flavor of Macbook are you using?  Does it pass the self-tests?
> >
> > rg
> 
> I just noticed that you have to build with --disable-threads to allow
> "make check" to pass. I guess I never noticed it since I don't use it
> multithreaded.

Well, that worked, but it uncovered another problem:

gc/new_gc_alloc.h includes bits/stl_alloc.h which no longer exists in 
gcc4, and gcc3 is no longer supported on Intel Macs.

I tried a few naive workarounds, but none of them worked.

:-(

rg
From: Ron Garret
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-ED56F3.11292411052007@news.gha.chartermi.net>
In article <·······························@news.gha.chartermi.net>,
 Ron Garret <·········@flownet.com> wrote:

> In article <························@y5g2000hsa.googlegroups.com>,
>  Rayiner Hashem <·······@gmail.com> wrote:
> 
> > > What flavor of Macbook are you using?  Does it pass the self-tests?
> > >
> > > rg
> > 
> > I just noticed that you have to build with --disable-threads to allow
> > "make check" to pass. I guess I never noticed it since I don't use it
> > multithreaded.
> 
> Well, that worked, but it uncovered another problem:
> 
> gc/new_gc_alloc.h includes bits/stl_alloc.h which no longer exists in 
> gcc4, and gcc3 is no longer supported on Intel Macs.
> 
> I tried a few naive workarounds, but none of them worked.

Update: it appears that bits/stl_alloc.h is being included in order to 
get the simple_alloc template, which seems to have completely vanished 
from gcc4:

[···@mickey:/usr/include/c++/4.0.0]$ grep -r simple_ .
[···@mickey:/usr/include/c++/4.0.0]$ 


rg
From: Rayiner Hashem
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <1178912928.391309.25380@o5g2000hsb.googlegroups.com>
As far as I can tell, new_gc_alloc.h is a special header for using SGI
STL's non-standard extensions. Most such extensions were removed in
GCC 4.0. Is there any particular reason you need to use this header?
Also, GCC 3.x (and all its headers) is still in Tiger, it's just named
g++-3.3.

> Update: it appears that bits/stl_alloc.h is being included in order to
> get the simple_alloc template, which seems to have completely vanished
> from gcc4:
>
> [···@mickey:/usr/include/c++/4.0.0]$ grep -r simple_ .
> [···@mickey:/usr/include/c++/4.0.0]$
>
> rg
From: Ron Garret
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-C60E87.13091111052007@news.gha.chartermi.net>
In article <·······················@o5g2000hsb.googlegroups.com>,
 Rayiner Hashem <·······@gmail.com> wrote:

> As far as I can tell, new_gc_alloc.h is a special header for using SGI
> STL's non-standard extensions. Most such extensions were removed in
> GCC 4.0. Is there any particular reason you need to use this header?

Well, yes and no.  I'm trying to compile some code I wrote a long time 
ago on Linux which uses the SGI STL API.  (How's that for some TLA's?)  
I suppose I could try to rewrite it using the more standard interface, 
but I was really hoping to avoid that.

> Also, GCC 3.x (and all its headers) is still in Tiger, it's just named
> g++-3.3.

Apparently it doesn't work:

[···@mickey:~/devel/ciel]$ g++-3.3 reader.cc
g++-3.3: installation problem, cannot exec `cc1plus': No such file or 
directory

This is after a fresh install of XCodeTools2.4.1 (and even after a 
separate re-install of the GCC3.3 packaage).  I've found some stuff on 
the Web that indicates that 3.3 is not supported on Intel macs.

rg
From: Rayiner Hashem
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <1178926606.786640.310100@l77g2000hsb.googlegroups.com>
Tricky problem. You could always try STLport (5.x), which seems to
implement this particular extension, and is apparently supported on
Darwin.
From: Ron Garret
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <rNOSPAMon-BEE84E.12425612052007@news.gha.chartermi.net>
In article <························@l77g2000hsb.googlegroups.com>,
 Rayiner Hashem <·······@gmail.com> wrote:

> Tricky problem. You could always try STLport (5.x), which seems to
> implement this particular extension, and is apparently supported on
> Darwin.

I think I'll just update my code to use the new interface.  The SGI 
stuff is getting pretty stale.

rg
From: Tim Bradshaw
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <f22k9i$kif$2$8300dec7@news.demon.co.uk>
On 2007-05-11 21:09:11 +0100, Ron Garret <·········@flownet.com> said:

> How's that for some TLA

SGI INA TLA IMO, though it probably was when you wrote the code :-)
From: Juanjo
Subject: Re: Boehm GC on OS X?
Date: 
Message-ID: <1178765997.578829.48400@y5g2000hsa.googlegroups.com>
On May 8, 3:03 pm, Ron Garret <·········@flownet.com> wrote:
> Has anyone successfully built the Boehm GC on OS X 10.4?  I've tried
> every version up to and including 7.0alpha7 and they all fail the self
> test.  (I'm running on a Macbook Pro, i.e. a Core2 duo.)

ECL uses the version 6.8 of the garbage collector.

Juanjo