At a guess I'd say that libpvm3.a is referring to "xdr_long", "listen" etc, and no library has them. You'll need to find a library that defines them and add a -l flag for it. I think. Simon | But then I tried : | ghc -v -o a.out -L /usr/local/pvm3/lib/SUN4SOL2/ -lpvm3 Main.o | | and it wrote : | | .... | xdr_long | /usr/local/pvm3/lib/SUN4SOL2//libpvm3.a(lpvmpack.o) | listen | /usr/local/pvm3/lib/SUN4SOL2//libpvm3.a(lpvm.o) | connect | /usr/local/pvm3/lib/SUN4SOL2//libpvm3.a(lpvm.o) | ld: fatal: Symbol referencing errors. No output written to a.out | | Libpvm3.a is PVM library and C programs need only to include pvm3.h and | to be linked with this library. | MatoG.