[GRASS-user] Pros/Cons of different build strategies on OS X

William Kyngesburye woklist at kyngchaos.com
Tue Feb 5 10:11:04 EST 2008


Well, from my point of view, I recommend my method of course.  Simple  
for the end-user, that's the point.  Though I don't build some of those.

Fink/Macports is handy for those that come over from some *nix  
background.  A couple of problems:

- As you found, they can get confused between their own and system  
copies of libraries.

- They only build X11 versions of software, even though an OSX-native  
build is possible.  Though I recall hearing that one of them could now  
build OSX-native.

- They have a massive duplication of effort.  (I didn't realize that  
Macports even has its own copy of GCC!  Fink doesn't, last I looked.)


Binaries are a good way to go nowadays.  Much software has been  
compiled for those that don't want to deal with that, and some even by  
the developers as 'official' binaries.  Though I've seen some that are  
based on Fink/Macports, ugh.

- Python (though Leopard's Python 2.5 is now very much in line with  
the 'official' binaries)
- many Python extensions
- R (nice bonus - a Fortran compiler)
- GRASS (me, a couple others)
- Qgis (me, devs)
- GDAL (me)
- ImageMagick (the official binaries are barebones, I package the  
GraphicsMagick alternative)
- MapServer (me)
- OSSIM (devs)
- PostGIS (me)
- miscellaneous support software (me, and in the system)
- a bunch of FOSS 3D packages


Supporting libraries and other software are easy to compile from  
source, if you're willing to get your command line fingers a little  
dirty.  Developers are much more aware of OSX today, so the normal  
configure-make-install routine usually works.

I have build instructions for a bunch of software, mainly for the  
things I also package in binaries.  Some of it is a bit out of date,  
but I'm in the process of updating it.

I looked at GMT a LONG time ago, before I found GRASS.  That was  
before OSX was a common platform, and compilation was hellish.  I'm  
sure it's much more smooth now.


I know what the OpenGL problem is, a bug in Apple's linker - see the  
MacOSX readme in the GRASS source for a workaround, though I don't  
know how you would apply that in Macports or Fink.

On Feb 5, 2008, at 1:22 AM, David Finlayson wrote:

> I've got three brand new OS X Leopard Mac Pros that need the complete
> OS Geographic software stack built (GMT, GRASS, Image Magic, etc) but
> I have limited experience in OS X. For years on Debian/Ubuntu I just
> let the package manager (aptget) handle all the libraries and I only
> compiled from source the main programs that weren't in the repository.
>
> What do you do to build up all the libraries? Manage the dozens of
> required libraries manually? Fink? MacPorts? William Kyngesburye?
>
> I tried using MacPorts on a Tiger laptop and wound up downloading and
> compiling a brand new OS in /opt/local by the time I was done
> satisfying dependencies---complete with a duplicate version of GCC
> (SciPy wanted the new F95 compiler, I guess). That was a colossal
> effort, a complete waist of all the work Apple has done and introduced
> serious confusion between native OS X and X11 libraries which I never
> completely resolved. In fact, a few days ago, GRASS stopped compiling
> altogether because of an OpenGL problem...Anyway, I'd like to avoid
> that if possible. Any ideas?
>
> -- 
> David Finlayson, Ph.D.
> Operational Geologist
>
> U.S. Geological Survey
> Pacific Science Center
> 400 Natural Bridges Drive
> Santa Cruz, CA  95060, USA
>
> Tel: 831-427-4757, Fax: 831-427-4748, E-mail: dfinlayson at usgs.gov
> _______________________________________________
> grass-user mailing list
> grass-user at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-user

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

"Those people who most want to rule people are, ipso-facto, those  
least suited to do it."

- A rule of the universe, from the HitchHiker's Guide to the Galaxy




More information about the grass-user mailing list