Hi,
 
I want to used OCaml for parallel computing. For this, I used the Paderborn
University BSP-Library (http://wwwcs.upb.de/~bsp/), i.e, a C-compiler for
parallel computing (like mpicc) and I write a library in the spirit of
ocamlMPI of Xavier Leroy (i.e, a "C file" using <mpi.h> calling the mpi
primitives and a camlmpi.ml file for Interfacing mpi with Objective Caml)
 
When I compile the library (using ocamlopt), I have no problem. But when I
want an executable:
 
ocamlopt -thread unix.cmxa threads.cmxa -I /home/gava/lib/
/home/gava/lib/libbsmllib.pub_stubs.a files.cmx files.cmxa
parallel_caml.pub.cmxa  -cc pubcc -o prog prog.ml
 
where files.cmx(a) are other libraries (tools) in the directory
(/home/gava/lib/). I have this error message:
 
/usr/local/pub/lib/pc/linux/tcpip/libpub_d.a(system_unix.o): In function
`sys_init':
/usr/local/pub/system/system_unix.c:189: multiple definition of `sys_init'
/usr/local/lib/ocaml/libasmrun.a(sys.o)(.text+0x3f0): first defined here
/usr/i386-slackware-linux/bin/ld: Warning: size of symbol `sys_init' changed
from 22 to 44 in /usr/local/pub/lib/pc/linux/tcpip/libpub_d.a(system_unix.o)
/usr/local/pub/lib/pc/linux/tcpip/libpub_d.a(system_unix.o): In function
`sys_time':
/usr/local/pub/system/system_unix.c:242: multiple definition of `sys_time'
/usr/local/lib/ocaml/libasmrun.a(sys.o)(.text+0x4bc): first defined here
/usr/i386-slackware-linux/bin/ld: Warning: size of symbol `sys_time' changed
from 66 to 49 in /usr/local/pub/lib/pc/linux/tcpip/libpub_d.a(system_unix.o)
collect2: ld returned 1 exit status
Error during linking
 
Anybody have an idea ?
Thanks.
Frederic Gava