[Ur] Fwd: problems building Ur/Web on OS X since the change to dynamic so libs

Georg Bauer gb+ur at rfc1437.de
Thu Jan 28 11:55:59 EST 2010


> The general silence here pushed me to read a bit about Automake.  One person
> in some version of OS X has confirmed that my latest attempt at least gets
> past the C building stage for him.  Would you mind trying again, from the
> same Mercurial repo?
>    http://hg.impredicative.com/urweb

Doing just that right now. Needed install is automake and autoconf and
all their friends from MacPorts, because the system delivered automake
is too old. At least that's the message I got. And it needs to rebuild
the configure and friends at least on my machine (Snow Leopard and
MacPorts latest version).

What I did to get it running was the following:

PATH=/opt/local/bin/:$PATH aclocal
PATH=/opt/local/bin/:$PATH autoconf
PATH=/opt/local/bin/:$PATH ./configure
PATH=/opt/local/bin/:$PATH make
PATH=/opt/local/bin/:$PATH make install

If you have a default install of MacPorts, you might not need the PATH
stuff and can just run aclocal and autoconf - I usually have
/opt/local/bin at the end of my $PATH so default is still using system
delivered tools and only when explicitely required does it use
MacPorts tools.

I really hate the mlton step, it takes my poor old macbook pro quite
down, resource-wise ;)

Compiles fine and installs fine, demo hello world does run fine, too.
Looks like that cuts it. Only error I still got was on the make
install step when at the end you call ldconfig - that's not there on
the Mac, it's only needed on Linux.

Oh, regarding the question someone asked a bit ago: it is
platform/darwin.h of the mlton installation that needs the #define
_XOPEN_SOURCE added so the generated C code does compile - otherwise
the C compiler step will complain about the depricated ucontext calls.
I just installed the binary install of mlton and patched the
platform/darwin.h header right before the include for ucontext.h:

#include <termios.h>
#define _XOPEN_SOURCE /* needed for ucontext functions, as those are
deprecated */
#include <ucontext.h>
#include <utime.h>


bye, Georg



More information about the Ur mailing list