My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
  Advanced search   Search tips   Subscriptions
Issue 125: compile failed on Mac OS X 10.4 Tiger (Xcode 2.5)
1 person starred this issue and may be notified of changes. Back to list
Status:  Started
Owner:  ----

Sign in to add a comment
Reported by, Oct 24, 2008
I've tried to compile current SVN revision 333.
There was several issues. Looks like some mkfiles should be fixed,
plus stack size issue should be documented in INSTALL.

BTW, it's good idea to add variant "MacOSX" into comments in INSTALL,
so user will not have to guess this name.

`sh` and `mk nuke` works ok,
but next `mk install` failed with (I've reformatted long lines):

cc -c -DROOT="/Users/powerman/inferno" -DOBJTYPE="386" -DEMU -I. -I../port
    -I/Users/powerman/inferno/include -I/Users/powerman/inferno/libinterp
    -arch i386 -mmacosx-version-min=10.4 -Wno-deprecated-declarations
    -Wuninitialized -Wunused -Wreturn-type -Wimplicit -Wno-four-char-
    -Wno-unknown-pragmas -pipe -fno-strict-aliasing -no-cpp-precomp
    -mno-fused-madd -I/Users/powerman/inferno/MacOSX/386/include
    -I/Users/powerman/inferno/include -Os -DKERNDATE=1224844007 emu.c
cc -arch i386 -mmacosx-version-min=10.4 -multiply_defined suppress
    -L/usr/X11R6/lib -o o.emu asm-386.o os.o emu.root.o lock.o win.o 
    devssl.o devprof.o devmnt.o devsnarf.o devmem.o devpointer.o devdup.o
    devenv.o devprog.o devindir.o ipif.o devsrv.o devcap.o srv.o deveia.o
    devcons.o devcmd.o cmd.o devip.o ipaux.o devpipe.o devfs.o devroot.o
    latin1.o errstr.o print.o dis.o dial.o chan.o random.o error.o env.o
    pgrp.o parse.o discall.o dev.o exception.o uqid.o proc.o qio.o 
    sysfile.o alloc.o cache.o main.o inferno.o emu.o
    /Users/powerman/inferno/MacOSX/386/lib/lib9.a -lm -framework Carbon
    -framework QuickTime -lpthread -framework CoreFoundation -framework 
i686-apple-darwin8-gcc-4.0.1: /Users/powerman/inferno/MacOSX/386/lib/
libkeyring.a: No such file or directory
mk: cc -c -DROOT="/Users/powerman/inferno" ...  : exit status=exit(1)
mk: echo "(cd $SYSTARG; ...  : exit status=exit(1)
mk: for j in ...  : exit status=exit(1)

Looks like libkeyring wasn't built at this point, probably it missed
from some mkfile. This issue can be fixed this way:

$ cd libkeyring/
$ ls -l
total 48
-rw-r--r--   1 powerman  powerman  1299 Oct 22 22:10 NOTICE
-rw-r--r--   1 powerman  powerman  3469 Oct 22 22:10 dsaalg.c
-rw-r--r--   1 powerman  powerman  3557 Oct 22 22:10 egalg.c
-rw-r--r--   1 powerman  powerman  1938 Oct 22 22:10 keys.h
-rw-r--r--   1 powerman  powerman   226 Oct 22 22:10 mkfile
-rw-r--r--   1 powerman  powerman  3582 Oct 22 22:10 rsaalg.c
$ mk install
$ cd ..

Then continue with main `mk install`. Next time it failed with:

(cd ida; mk  install)
limbo -c -I/Users/powerman/inferno/module -gw ida.b
sh: line 1: syntax error near unexpected token `;'
mk: ;  : exit status=exit(2)
mk: for j in ...  : exit status=exit(1)
mk: for j in ...  : exit status=exit(1)
mk: for j in ...  : exit status=exit(1)

This looks like typo in mkfile. Edit appl/lib/ida/mkfile and remote ";" 
from last line (probably replacing ; with "true" will do same thing):


Next time `mk install` fail in nearly same place:

(cd ida; mk  install)
rm -f /Users/powerman/inferno/dis/lib/ida/ida.dis && cp ida.dis /Users/

rm -f /Users/powerman/inferno/dis/lib/ida/idatab.dis && cp idatab.dis /
cp: idatab.dis: No such file or directory
mk: rm -f /Users/powerman/inferno/dis/lib/ida/idatab.dis ...  : exit 
mk: for j in ...  : exit status=exit(1)
mk: for j in ...  : exit status=exit(1)
mk: for j in ...  : exit status=exit(1)

This can be solved by compiling idatab.b manually,
with increased stack size limit:

$ cd appl/lib/ida/
$ limbo idatab.b
Segmentation fault
$ ulimit -s 65536
$ limbo idatab.b
$ cd ../../..

Why not just use something like
    ulimit -s 65536
    limbo idatab.b
in appl/lib/ida/mkfile to solve this issue?

After next `mk install` compilation finished successfully.
Oct 24, 2008
Project Member #1
i've changed INSTALL. i've added a cp from an idatab.dis copy with a different name.
the ulimit would in some ways be better but is too system-specific (and won't help on

Status: Started
Oct 25, 2008
I've found one more place with list of platforms where MacOSX also
should be added: namespace(4).
Apr 28, 2011
Can this issue be marked as resolved?  Though supporting older platforms is nice for certain situations, even Go has stopped the OS X 10.4 support.
Sign in to add a comment

Powered by Google Project Hosting