In a previous essay I recounted my travails in getting the GD.pm, and some other Open Source stuff, up and running on the OS X box. I did it again last night, and here are some maybe-helpful hints. If you don’t know what GD.pm might be, you won’t miss anything by skipping this one.

I’m going to type an unstructured linear narrative in here in the hopes that people facing the same problems will find it down the road with random Google searches.

Fink and apt-get · The conventional way to get OSS things going on OS X is with incantations like the following:

sudo fink install mysql

Except for, there are problems. First of all, fink only knows about perl 5.6, which just doesn’t cut it for XML and Unicode. Second, fink seems a bit out of sorts, when I did the above mysql simply refused to compile. Well, if you’re willing to have not quite the latest and greatest, there is another way, which I recommend:

sudo apt-get install mysql

This gets binaries rather than source, which has the pleasant side effect that something like mysql installs in seconds rather than hours. From here on in, I don’t think I’d use fink for anything unless I actually wanted to hack on it, in which case I’d probably do better working through CVS, right?

Better Living Through CPAN · Anyhow, I noticed that the new Mac still came with Perl 5.6 (in Q3 2003?!? Gimme a break), so I did as follows:

perl -mCPAN -e shell
install Bundle::CPAN

Which goes away for a long time but when it’s done you have a nice brand-new 5.8 perl, I told it to go ahead and overwrite /usr/bin/perl, why not?

The Road to GD · I wasn’t so foolish as to just tell CPAN to install GD, because I know that it needs libgd and libpng and libjpeg and libz, along with eye of newt, toe of frog, and so on.

The computer has libz, and apt-get got me libjpeg, but its libgd is out of date, so I went and got the latest from chez Boutell, and also the latest libpng, all with the help of Google. BZZZZZT! WRONG! Everything blows up with ld complaining about not being able to find _GdImageCreateFromPng and a bunch of other names like that. It turns out that in the latest 2.0.15 rev of libgd Something Has Changed That Breaks Everything, I found a 2.0.12 lying around somewhere and it did the trick.

Other Bits and Pieces · Then I needed XML::Parser, and of course it needed expat, fortunately I could apt-get that.

Then I needed DBI and DBD::mysql, and CPAN could do those, except for DBD::mysql failed four tests for reasons that were opaque to me, so I just force-installed it anyhow, muahahaha.

Note that for a few of these pieces I had to copy the .a and .dylib files from /sw/ where fink/apt-get put them to /usr/local/lib and in one case even /usr/lib. Hmmm.

Anyhow, it all finally worked and this ongoing entry is comin’ atcha from my new Macintosh; and I have to say that going from 550MHz to 1.25GHz makes a difference when I hit the proof key and emacs and perl and mysql and expat and GD and everything combine to grind away on my poor unworthy prose.


author · Dad · software · colophon · rights
picture of the day
September 26, 2003
· Technology (85 fragments)
· · Open Source (82 more)

By

I am an employee of Amazon.com, but the opinions expressed here are my own, and no other party necessarily agrees with them.

A full disclosure of my professional interests is on the author page.