Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
Problems compiling 3.08.3 on Solaris/SPARC 9
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2005-03-21 (15:18)
From: Bernd Kuhls <bernd.kuhls@i...>
Subject: Problems compiling 3.08.3 on Solaris/SPARC 9

uname -a
SunOS sunray 5.9 Generic_117171-14 sun4u sparc SUNW,Sun-Fire-880 Solaris

Running ./configure with the output below does not produce ./.depend
which breaks building:

Makefile:675: .depend: No such file or directory

If I rem out the last line in ./Makefile and run "make depend" it does
not compile, output below.

Running ./configure on a Linux i686 machine works and creates .depend,
copying this file on the Solaris machine and running "make world.opt"
works but it should work out of the box.

Any help on this is appreciated.

Greetings, Bernd Kuhls

make depend
sed -e 's|%%LIBDIR%%|/usr/local/lib/ocaml|' \
             -e 's|%%BYTERUN%%|/usr/local/bin/ocamlrun|' \
             -e 's|%%CCOMPTYPE%%|cc|' \
             -e 's|%%BYTECC%%|gcc -fno-defer-pop -Wall
             -e 's|%%BYTELINK%%|gcc -Wl,-E|' \
             -e 's|%%NATIVECC%%|gcc -Wall -D_FILE_OFFSET_BITS=64
             -e 's|%%NATIVELINK%%|gcc |' \
             -e 's|%%PARTIALLD%%|ld -r |' \
             -e 's|%%PACKLD%%|ld -r |' \
             -e 's|%%BYTECCLIBS%%|-lnsl -lsocket -lm  -lcurses -lpthread
-lposix4|' \
             -e 's|%%NATIVECCLIBS%%|-lnsl -lsocket -lm |' \
             -e 's|%%RANLIBCMD%%|ranlib|' \
             -e 's|%%BINUTILS_NM%%|/usr/local/bin/nm|' \
             -e 's|%%CC_PROFILE%%|-pg|' \
             -e 's|%%BINUTILS_OBJCOPY%%|/usr/local/bin/objcopy|' \
             -e 's|%%ARCH%%|sparc|' \
             -e 's|%%MODEL%%|default|' \
             -e 's|%%SYSTEM%%|solaris|' \
             -e 's|%%EXT_OBJ%%|.o|' \
             -e 's|%%EXT_ASM%%|.s|' \
             -e 's|%%EXT_LIB%%|.a|' \
             -e 's|%%EXT_DLL%%|.so|' \
             utils/config.mlp > utils/
boot/ocamlyacc -v parsing/parser.mly
boot/ocamlrun boot/ocamllex parsing/lexer.mll
151 states, 2994 transitions, table size 12882 bytes
2112 additional bytes used for bindings
boot/ocamlrun boot/ocamllex parsing/linenum.mll
12 states, 323 transitions, table size 1364 bytes
sed -n -e '/^enum/p' -e 's/,//g' -e '/^  /p' byterun/instruct.h | \
         awk -f tools/make-opcodes > bytecomp/
cd byterun; make primitives
make[1]: Entering directory
sed -n -e "s/CAMLprim value \([a-z0-9_][a-z0-9_]*\).*/\1/p" \
     alloc.c array.c compare.c extern.c floats.c gc_ctrl.c hash.c
intern.c interp.c ints.c io.c lexing.c md5.c meta.c obj.c parsing.c
signals.c str.c sys.c terminfo.c callback.c weak.c finalise.c stacks.c
dynlink.c > primitives
make[1]: Leaving directory
(echo 'let builtin_exceptions = [|'; \
  sed -n -e 's|.*/\* \("[A-Za-z_]*"\) \*/$|  \1;|p' byterun/fail.h | \
  sed -e '$s/;$//'; \
          echo '|]'; \
          echo 'let builtin_primitives = [|'; \
          sed -e 's/.*/  "&";/' -e '$s/;$//' byterun/primitives; \
  echo '|]') > bytecomp/
ln -s sparc/ asmcomp/
ln -s sparc/ asmcomp/
ln -s sparc/ asmcomp/
ln -s sparc/ asmcomp/
ln -s sparc/ asmcomp/
cd tools; make CAMLC="../byterun/ocamlrun ../ocamlc -I ../stdlib" cvt_emit
make[1]: Entering directory
../boot/ocamlrun ../boot/ocamllex cvt_emit.mll
12 states, 285 transitions, table size 1212 bytes
../byterun/ocamlrun ../ocamlc -I ../stdlib -c -warn-error A -I ../utils
-I ../parsing -I ../typing -I ../bytecomp -I ../asmcomp -I ../driver
make[1]: ../byterun/ocamlrun: Command not found
make[1]: *** [cvt_emit.cmo] Error 127
make[1]: Leaving directory
make: *** [tools/cvt_emit] Error 2

ocaml-3.08.3/> ./configure
Configuring for a sparc-sun-solaris2.9 ...
gcc found
The C compiler is ANSI-compliant.
Checking the sizes of integers and pointers...
OK, this is a regular 32 bit architecture.
64-bit "long long" integer type found (printf with "%ll").
This is a big-endian architecture.
Doubles must be doubleword-aligned.
64-bit integers must be doubleword-aligned.
Native division and modulus have round-towards-zero semantics, will use
objcopy and nm found in /usr/local/bin
ranlib found
#! appears to work in shell scripts
POSIX signal handling found.
times() found.
termcap functions found (with libraries '-lcurses')
You have BSD sockets (with libraries '-lnsl -lsocket')
socklen_t is defined in <sys/socket.h>
IPv6 is supported.
unistd.h found.
off_t is defined in <sys/types.h>
dirent.h found.
rewinddir() found.
lockf() found.
mkfifo() found.
getcwd() found.
getwd() found.
getpriority() found.
utime() found.
utimes() found.
dup2() found.
fchmod() found.
truncate() found.
sys/select.h found.
select() found.
symlink() found.
waitpid() found.
wait4() found.
getgroups() found.
POSIX termios found.
setitimer() found.
gethostname() found.
uname() found.
gettimeofday() found.
mktime() found.
setsid() found.
putenv() found.
setlocale() and <locale.h> found.
dlopen() found.
Dynamic loading of shared libraries is supported.
mmap() found.
gethostbyname_r() found (with 5 arguments).
gethostbyaddr_r() found (with 7 arguments).
Replay debugger supported.
Cannot detect system stack overflow.
POSIX threads library supported.
Options for linking with POSIX threads: -lpthread -lposix4
sigwait() found
Bytecode threads library supported.
Location of X11 include files: /usr/X11R6/include/X11
Options for linking with X11: -L/usr/X11R6/lib -lX11
NDBM found (in /usr/include)
Configuring LablTk...
tcl.h version 8.4 found with "".
tk.h found.
Tcl/Tk libraries found.
Camlp4 correctly configured.

** Configuration summary **

Directories where Objective Caml will be installed:
         binaries.................. /usr/local/bin
         standard library.......... /usr/local/lib/ocaml
         manual pages.............. /usr/local/man (with extension .1)
Configuration for the bytecode compiler:
         C compiler used........... gcc
         options for compiling..... -fno-defer-pop -Wall
         options for linking.......  -Wl,-E  -lnsl -lsocket -lm
-lcurses -lpthread -lposix4
         shared libraries are supported
         options for compiling..... -fPIC -fno-defer-pop -Wall
         command for building...... gcc -shared -o
-Wl,-rpath,/a/path objs
Configuration for the native-code compiler:
         hardware architecture..... sparc
         OS variant................ solaris
         C compiler used........... gcc
         options for compiling..... -Wall -D_FILE_OFFSET_BITS=64
         options for linking.......   -lnsl -lsocket -lm
         assembler ................ $(AS)
         preprocessed assembler ... gcc -c -DSYS_$(SYSTEM)
         profiling with gprof ..... supported
         ocamlopt -pack ........... supported
Source-level replay debugger: supported
Additional libraries supported:
         unix str num dynlink bigarray systhreads threads graph dbm labltk
Configuration for the "num" library:
         target architecture ...... sparc (asm level 1)
Configuration for the "graph" library:
         options for compiling .... -I/usr/X11R6/include
         options for linking ...... -L/usr/X11R6/lib -lX11
Configuration for the "labltk" library:
         use tcl/tk version ....... 8.4
         options for compiling ....
         options for linking ......  -ltk8.4 -ltcl8.4

** Objective Caml configuration completed successfully **