DISCLAIMER: This is a continuing series detailing the painful story of a DIY render farm build. It is terribly technics and
somewhat frustrating. Those who are unprepared for such “entertainment” are advised to ignore these posts.
I was still on the Mac Mini, still trying to build Dr. Queue. Dr. Queue needed GTK2 to build. GTK2 would not build, because it needed py27-libxml. The port existed, but MacPorts was just not doing it. Typing in the command yielded nothing.
In desperation I searched the MacPorts folders on the hard drive. When Ports gets a list of available software it downloads a massive list of software locations. I wonder if I manually dragged the /opt/… location of the py27-lbxml port file to the terminal if it would work.
This worked! It began to install! Apparently LibXML is also a dependency for py27-libxml, and that is installing as well. So, keep this straight if you can – I needed LibXML to build py27-libxml to build GTK2 to build drqman. We’re four levels down. But who cares? After that, GTK2 began compiling!
There were lots of dependencies and then…
The new error said that a dependency called “db48” failed to install. “db48” is apparently (Google told me) a database library. It’s an old piece of software, is a cornerstone of practically everything, and is one of the various “db” routines in the “Berkeley Database” package. So one of the dependencies for GTK2, that being the mysterious “db48,” has failed. Four levels down and we’ve failed to find the dependency of a dependency of a dependency of the project we want to compile. Is it a wonder that this stuff loses most people? But I’m not most people, I have an annoying ability to focus on minutiae, so I continued.
At this point the Mac Software Update window interrupted. Did I know I was not completely up to date? This could have been useful, so I clicked “yes” to:
- Regular OS X update requests, security issues, etc.
- X11 2006 update
- Java 1.4.2 release 2 update and
- OS X 10.4.11 update
Maybe this would solve the db48 compile issues? It sounded useful, especially since it was asking for things like an updated X-11. Maybe something good would come of it? As it turned out, not really. Or rather maybe it was good overall, but it did not address my db48 issue.
While grasping at straws, I noticed that the permissions for the /opt directory (the one in which the MacPorts are stored – an “optional” directory) were set to 755. When db48 bombs out, the error message seemed to suggest a permissions issue. I used
chmod -R 755
to correct the permissions on /opt, but…
db48 failed again and again.
So drqman needs a libgtk to run, but I can’t build GTK2 without db48, and db48 would not build… What to do?