Hi Dave,
    Thanks for the reply. ; Setting $MPI_CC="mpicc -noswitcherror" moved the
build a bit further but it exited with a different error, this time:

-------
make[2]: Entering directory
`/autofs/na1_home/janjust/valgrind/valgrind_sources/valgrind_clean_src/mpi'
mpicc -noswitcherror    -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-Warning-Unknown switch: -fno-omit-frame-pointer
pgcc-Warning-Unknown switch: -Wall
pgcc-Warning-Unknown switch: -MT
pgcc-Warning-Unknown switch: -MP
pgcc-Warning-Unknown switch: -MF
pgcc-Error-Output would overwrite input file:
libmpiwrap_amd64_linux_so-libmpiwrap.o
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
----------
You are correct my mpicc is wrapped around a pgi compiler, and if I unload
the pgi module that is setting the env_vars to it, and use a module that
sets gcc instead it doesn't recognize an MPI2-cc like compiler at all. 

As to your suggestion of using a different MPI built with GCC. Say I have my
own locally compiled MPI library with GCC, how do I go about pointing
valgrind to this version? 

Again, thanks for the reply.

-Tommy



Bugzilla from good...@mcs.anl.gov wrote:
> 
> 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
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Valgrind-MPI-fails-to-build-libmpiwrapers-tp31948567p31949562.html
Sent from the Valgrind - Users mailing list archive at Nabble.com.


------------------------------------------------------------------------------
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