[MPICH] Compiling a program (john-mpi MPICH2) under cygwin / WinXP - use -lmpicxx

Jayesh Krishna jayesh at mcs.anl.gov
Wed Feb 20 15:24:18 CST 2008


Hi,
 Try,

gcc -c ... -lmpicxx -lfmpich2 -lmpi ...

(Note: I used "-lmpicxx" instead of "-llibmpicxx" )

Regards,
Jayesh

-----Original Message-----
From: madfran [mailto:madfran at set-ezine.org] 
Sent: Wednesday, February 20, 2008 3:16 PM
To: Jayesh Krishna
Cc: mpich-discuss at mcs.anl.gov
Subject: RE: [MPICH] Compiling a program (john-mpi MPICH2) under cygwin /
WinXP - use libmpicxx.a

Hi,...

The problem is not solved.

***************************
.............
gcc -c -Wall -O3 -fomit-frame-pointer -I/cygdrive/c/Progra~1/MPICH2/include
- L/cygdrive/c/Progra~1/MPICH2/lib -llibmpicxx -lmpi -lfmpich2
-funroll-loops NTmmx _fmt.c
NTmmx_fmt.c:63: warning: alignment of 'saved_plain' is greater than maximum
object file alignment.  Using 16
NTmmx_fmt.c:65: warning: alignment of 'output' is greater than maximum
object file alignment.  Using 16
gcc: -llibmpicxx: linker input file unused because linking not done
gcc: -lmpi: linker input file unused because linking not done
gcc: -lfmpich2: linker input file unused because linking not done
...........
bench.o:bench.c:(.text+0x849): undefined reference to `_MPI_Reduce'
...........
**************************


On Tue, 19 Feb 2008 16:39:52 -0600, Jayesh Krishna wrote
> Hi,
>   If you want to compile MPI programs written in C++ from cygwin use 
> the libmpicxx.a library (not cxx.lib) in MPICH2\lib.
> 
> Regards,
> Jayesh
> 
> -----Original Message-----
> From: owner-mpich-discuss at mcs.anl.gov
> [mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of madfran
> Sent: Tuesday, February 19, 2008 4:09 PM
> To: mpich-discuss at mcs.anl.gov
> Subject: [MPICH] Compiling a program (john-mpi MPICH2) under cygwin / 
> WinXP
> 
> Hi,...
> 
> Trying to build a program under cygwin / WinXP I had received these 
> messages.
> MPICH2 is installed only under WinXP.
> 
> Any idea?
> 
> ************************************************************
> .....
> gcc -c -Wall -O3 -fomit-frame-pointer 
> -I/cygdrive/c/Progra~1/MPICH2/include
> - L/c
> ygdrive/c/Progra~1/MPICH2/lib -lcxx.lib -lmpi -lfmpich2 -funroll-
> loops   NTmmx_f mt.c NTmmx_fmt.c:63: warning: alignment of 
> 'saved_plain' is greater than maximum obje ct file alignment.  Using
> 16 NTmmx_fmt.c:65: warning: alignment of 'output' is greater than 
> maximum object fi le alignment.  Using 16
> gcc: -lcxx.lib: linker input file unused because linking not done
> gcc: -lmpi: linker input file unused because linking not done
> gcc: -lfmpich2: linker input file unused because linking not done gcc 
> -c -DUNDERSCORES md5-mmx.S gcc -c  -DUNDERSCORES sha1-mmx.S gcc
DES_fmt.o
> DES_std.o DES_bs.o BSDI_fmt.o MD5_fmt.o MD5_std.o BF_fmt.o BF_std.
> o AFS_fmt.o LM_fmt.o des.o MD5_apache_fmt.o BFEgg_fmt.o lotus5_fmt.o 
> md5.o NSLDA P_fmt.o NSLDAPS_fmt.o sha1.o base64.o MYSQL_fmt.o NT_fmt.o 
> md4.o smbencrypt.o ra wMD5_fmt.o rawSHA1_fmt.o mssql_fmt.o
hmacMD5_fmt.o
> WPAPSK_fmt.o mscash_fmt.o ora cle_fmt.o batch.o bench.o charset.o 
> common.o compiler.o config.o cracker.o
> crc32
> .o external.o formats.o getopt.o idle.o inc.o john.o list.o loader.o 
> logger.o ma th.o memory.o misc.o options.o params.o path.o recovery.o 
> rpp.o rules.o signals. o single.o status.o tty.o wordlist.o unshadow.o 
> ryan.o unafs.o undrop.o unique.o  DES_bs_b.o x86.o x86-mmx.o  
> md4-sse2.o NTmmx_fmt.o md5-mmx.o sha1-mmx.o - lkerne l32 -o 
> ../run/john.exe
> hmacMD5_fmt.o:hmacMD5_fmt.c:(.text+0x6c3): undefined reference to 
> `_mdfivemmx_no sizeupdate' hmacMD5_fmt.o:hmacMD5_fmt.c:(.text+0x6db)
> : undefined reference to `_mdfivemmx_no init_uniformsizeupdate' 
> hmacMD5_fmt.o:hmacMD5_fmt.c:(.text+0x6ef): undefined reference to 
> `_mdfivemmx_no sizeupdate' hmacMD5_fmt.o:hmacMD5_fmt.c:(.text+0x703)
> : undefined reference to `_mdfivemmx_no init_uniformsizeupdate' 
> bench.o:bench.c:(.text+0x849): undefined reference to `_MPI_Reduce' 
> bench.o:bench.c:(.text+0x91f): undefined reference to `_MPI_Reduce' 
> bench.o:bench.c:(.text+0x9f2): undefined reference to `_MPI_Reduce' 
> bench.o:bench.c:(.text+0xab0): undefined reference to `_MPI_Reduce' 
> john.o:john.c:(.text+0x33): undefined reference to `_MPI_Init' 
> john.o:john.c:(.text+0x43): undefined reference to `_MPI_Comm_rank' 
> john.o:john.c:(.text+0x53): undefined reference to `_MPI_Comm_size' 
> john.o:john.c:(.text+0x6e3): undefined reference to `_MPI_Finalize' 
> john.o:john.c:(.text+0x721): undefined reference to `_MPI_Finalize' 
> john.o:john.c:(.text+0x741): undefined reference to `_MPI_Finalize' 
> john.o:john.c:(.text+0x8f1): undefined reference to `_MPI_Finalize' 
> john.o:john.c:(.text+0xa92): undefined reference to `_MPI_Finalize' 
> misc.o:misc.c:(.text+0x38): more undefined references to 
> `_MPI_Finalize' follow collect2: ld returned 1 exit status make[1]:
> *** [../run/john.exe] Error 1 make[1]: Leaving directory `/tmp/john- 
> mpi/john-1.7.2-bp17-mpi6/src' make: *** [win32-cygwin-x86-sse2] Error 
> 2





More information about the mpich-discuss mailing list