On Jun 28, 2011, at 12:45 PM CDT, janjust wrote:

>    I'm trying to build valgrind for testing some simple MPI programs;
> however,  when building valgrind everything but the libmpiwrap_<platform>.so
> builds. The error that I'm getting is:
> 
> -----
> mpicc    -I../include  -g -O -fno-omit-frame-pointer -Wall -fpic -m64  -MT
> libmpiwrap_amd64_linux_so-libmpiwrap.o -MD -MP -MF
> .deps/libmpiwrap_amd64_linux_so-libmpiwrap.Tpo -c -o
> libmpiwrap_amd64_linux_so-libmpiwrap.o `test -f 'libmpiwrap.c' || echo
> './'`libmpiwrap.c
> pgcc-Error-Unknown switch: -fno-omit-frame-pointer
> pgcc-Error-Unknown switch: -Wall
> pgcc-Error-Unknown switch: -MT
> pgcc-Error-Unknown switch: -MP
> pgcc-Error-Unknown switch: -MF
> make[2]: *** [libmpiwrap_amd64_linux_so-libmpiwrap.o] Error 1
> make[2]: Leaving directory
> `/autofs/na1_home/janjust/valgrind/valgrind_sources/valgrind_clean_src/mpi'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory
> `/autofs/na1_home/janjust/valgrind/valgrind_sources/valgrind_clean_src'
> make: *** [all] Error 2
> -bash-3.2$ 
> -------

Unfortunately, valgrind's build process for the MPI wrappers is a bit narrow 
minded about what it expects from the MPI installation.  Also, the configure 
test for a working "mpicc" is too weak compared to the way that mpicc is used.  
I wrote a patch to improve the logic a little while back, but it hasn't been 
applied yet: https://bugs.kde.org/show_bug.cgi?id=274078

But even if that patch was applied I think that would have just disabled the 
Valgrind MPI wrappers for you by default instead.

In your case, you have an "mpicc" compiler wrapper around a PGI compiler.  The 
PGI compiler doesn't understand the same set of options as GCC or ICC, so it's 
erroring out during the MPI wrapper build step.  To get un-stuck right away, 
you might be able to reconfigure with MPI_CC="mpicc -noswitcherror", although I 
can't predict with any certainty whether the built wrappers will work correctly 
even if they do finish compiling.

Other options include using a version of MPI that is built with GCC instead of 
PGI, or disabling the Valgrind MPI wrappers altogether if you don't need that 
additional level of functionality.

-Dave


------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to