CompilingForMac

Webs: Faemalia -:- Greatprawn -:- Playground -:- Technical -:- Tweak
Technical Web Sections: Register -:- Users -:- Changes -:- Index -:- Search -:- Statistics

After some attempts at compiling for Mac OS X, I'm going to gather up my knowledge. Other OS X users are more than welcome to add things based on actual successes. These notes so far are from a Linux user venturing into unknown BSD territory.

Problems with autogen.sh: Assumes Gnu libtool, but finds BSD libtool which doesn't understand --version.

Solution: Make sure your $PATH begins with /sw/bin:/sw/usr/bin or equivalent. Adding the similar bits to LD_LIBRARY_PATH may or may not be required.

Problem AM_* missing:

Solution: Make sure you have a Gnu automake installed, there's also a BSD one. Oh, and Dia 0.94 requires automake 1.7 to do distcheck, at least on Linux.

Problem: ltconfig: You must specify a host type if you use "--no-verify".

Solution: No clue. Updating config.guess and config.sub didn't work, neither did libtool1.5. These ideas from discussion at Expat ML.

Stuck for now, going to bed.

More solutions from mails on the unix-porting list:

Make sure you're running ./libtool rather than the built-in libtool. ./autogen.sh runs libtool and using ./libtool in there helps, but may break other systems, so not putting in CVS yet.

Run ./ltconfig ltmain.sh

Run ./configure with --build=powerpc-apple-bsd --host=powerpc-apple-bsd --target=powerpc-apple-bsd to force skipping broken target determination.

Now stranded on GTK 2.4 not being in Fink.

--
LarsClausen - 02 Oct 2004

Found gtk-osx and tried that instead, with Dia 0.90 as they only support Gtk 1.2.

Installed binary GTK/GDK/GLib packages.

Downloaded gdk-pixbuf sources and tried to install. Problems with guessing host system solved by

cp /usr/share/libtool/config* /usr/share/libtool/ltmain.sh .

My libdl.dylib is in /sw/lib, so I had to

export LDFLAGS=-L/sw/lib export CPPFLAGS=-I/sw/include

gdk-pixbuf insists on running some test programs that expect Gnome. Stupid thing. Went and took those out of the Makefile.

It appears to include some tiff/jpeg stuff even if its configure doesn't find it, so downloaded and installed the requisite tiff and jpeg libraries. Had to copy libtool stuff and

export LIBTIFF=-ltiff export LIBJPEG=-ljpeg

to get configure to accept them.

Now on to Dia. Copy libtool stuff again and configure with --disable-shared --enable-maintainer-mode. Not quite sure if the latter is required. Some files had #include "gdk/something", which should use <>, will fix in CVS. In app/Makefile.am, there is

LDFLAGS = --export-dynamic

which should be += instead of =. May or may not be necessary to do

LDFLAGS=$LDFLAGS" -ltiff -ljpeg"

at this point. However, two gdk functions are not defined, and _locale_charset is defined twice. Can't do much about the first problem until the gtk-osx people look at it. The _locale_charset thing may not be dangerous.

-- LarsClausen - 30 Apr 2005


Edit -:- Attach -:- Ref-By -:- Printable -:- More