I think I cheered too early here.
In my attempt to compile Unison ( a bloody great synchronisation tool ) I read this fatal error in my terminal screen:
....
Linking unison
ocamlc -verbose -I lwt -I ubase -custom -g -o unison unix.cma str.cma bigarray.cma -cclib -lutil ubase/projectInfo.cmo ubase/myMap.cmo ubase/safelist.cmo ubase/uprintf.cmo ubase/util.cmo ubase/rx.cmo ubase/uarg.cmo ubase/prefs.cmo ubase/trace.cmo lwt/pqueue.cmo lwt/lwt.cmo lwt/lwt_util.cmo lwt/lwt_unix.cmo bytearray.cmo case.cmo pred.cmo uutil.cmo fileutil.cmo name.cmo path.cmo fspath.cmo fingerprint.cmo abort.cmo osx.cmo external.cmo props.cmo fileinfo.cmo os.cmo lock.cmo clroot.cmo common.cmo tree.cmo checksum.cmo terminal.cmo transfer.cmo xferhint.cmo remote.cmo globals.cmo copy.cmo stasher.cmo update.cmo files.cmo sortri.cmo recon.cmo transport.cmo strings.cmo uicommon.cmo uitext.cmo test.cmo main.cmo linktext.cmo osxsupport.o pty.o bytearray_stubs.o
+ gcc -o 'unison' '-Llwt' '-Lubase' '-L/opt/lib/ocaml' '/tmp/camlprim40f18d.c' '-lbigarray' '-lstr' '-lunix' '-lutil' 'osxsupport.o' 'pty.o' 'bytearray_stubs.o' '-lcamlrun' -I'/opt/lib/ocaml' -lm -ldl -lpthread
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/bin/ld: /lib/libc.so.6: warning: sh_link not set for section `.ARM.exidx'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/bin/ld: /lib/ld-linux.so.3: warning: sh_link not set for section `.ARM.exidx'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `_dl_allocate_tls@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `_dl_get_tls_static_info@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `errno@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libdl.so: undefined reference to `_dl_tls_get_addr_soft@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__tls_get_addr@GLIBC_2.4'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__default_sa_restorer_v2@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `h_errno@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__libc_dl_error_tsd@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__default_rt_sa_restorer_v2@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__default_rt_sa_restorer_v1@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `_dl_allocate_tls_init@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__resp@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `__default_sa_restorer_v1@GLIBC_PRIVATE'
/opt/lib/gcc/arm-none-linux-gnueabi/4.2.3/../../../../arm-none-linux-gnueabi/lib/libpthread.so: undefined reference to `_dl_deallocate_tls@GLIBC_PRIVATE'
collect2: ld returned 1 exit status
File "_none_", line 1, characters 0-1:
Error: Error while building custom runtime system
make: *** [unison] Error 2
I picked another source written in OCaml, name_align 0.7 , that did compile correctly.
Another test, Mdate 1.5.6, coded in C++ didn't work out:
...
/opt/lib/gcc/arm-none-linux-gnueabi/3.4.4/../../../../arm-none-linux-gnueabi/bin/ld: /lib/libstdc++.so: warning: sh_link not set for section `.ARM.exidx'
/opt/lib/gcc/arm-none-linux-gnueabi/3.4.4/../../../../arm-none-linux-gnueabi/bin/ld: /lib/libc.so.6: warning: sh_link not set for section `.ARM.exidx'
/opt/lib/gcc/arm-none-linux-gnueabi/3.4.4/../../../../arm-none-linux-gnueabi/bin/ld: /lib/ld-linux.so.3: warning: sh_link not set for section `.ARM.exidx'
mdate.o: In function `__static_initialization_and_destruction_0(int, int)':
mdate.cc:(.text+0x1984): undefined reference to `__aeabi_atexit'
cmdline.o: In function `__static_initialization_and_destruction_0(int, int)':
cmdline.cc:(.text+0x998): undefined reference to `__aeabi_atexit'
main.o: In function `__static_initialization_and_destruction_0(int, int)':
main.cc:(.text+0x7c4): undefined reference to `__aeabi_atexit'
collect2: ld returned 1 exit status
make: *** [mdate] Error 1
Does anyone have a clue?