LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2005-07-02 05:51:10


You have posted the almost exactly the same thing 4-5 times now, and I
have already replied with the solution. I'm not sure why my words are
not conveying the basic knowledge required for you to continue on with
your project (please go re-read my posts on the web archives), but I'll
try one last time:

1. your software requires the g++ compiler
2. your mpiCC is *not* using g++ (it is using pgCC)
3. hence, your software cannot be compiled with mpiCC
4. to fix this, you need to change mpiCC to use g++
5. note that it's not 100% clear that you're using LAM/MPI (you did not
answer my questions about this). *IF* you are using LAM/MPI:
    - I strongly recommend talking to your system administrator about
performing the rest of these steps for you
    - LAM needs to be recompiled with g++ instead of pgCC
    - for example, in the LAM source tree:
                ./configure CC=gcc CXX=g++ FC=g77 ...rest of your options...
    - this will automatically make mpiCC use g++ instead of pgCC
    - then you can compile your software with mpiCC (because it will now
use g++, which your software requires)

If you have questions about specific steps above, please feel free to
ask. Good luck.

On Jul 1, 2005, at 9:24 PM, nithu wrote:

> Hi,
>
> This is what i have tried so far...
>
> I installed a software(e-cell, bioinformatics related) that uses gcc
> as the default compiler, on 15 node linux cluster. I want to change
> the compiler from gcc to mpiCC, to parallelize the software. The
> software has C++ core, and python bindings as front end. For this
> first i tried changing the python script which calls gcc to compile.
> But this gave out different kind of errors. So i went ahead forcing to
> use mpiCC compiler when configuring, rather than the default
> gcc. Different variations of commands i've used so far are,
>
> $./configure CC=mpicc CXX=mpiCC
>
> $./configure --with-CC=mpicc --with-CXX=mpiCC
>
> for all these alternatives, configure does not give out any error, but
> when it comes to make, it fails.
>
> $make CC=mpicc CXX=mpiCC 
>
> $make
>
> For this i get errors like....
>
> mpiCC -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../.. -I/usr/include
> -I/workx5/ecell3 -I../../libltdl -g -Wno-pmf-conversions -g
> -Wno-pmf-conversions -c libecs.cpp  -DPIC -o .libs/libecs.o
> pgCC-Warning-Unknown switch: -Wno-pmf-conversions
> pgCC-Warning-Unknown switch: -Wno-pmf-conversions
> "Defs.hpp", line 427: error: identifier "INFINITY" is undefined
>     const Real INF( INFINITY );
>                     ^
> "Defs.hpp", line 444: warning: type qualifier on return type is
> meaningless
>     inline const Real FMA( const Real a, const Real b, const Real c )
>                       ^
> "libecs.hpp", line 55: warning: type qualifier on return type is
> meaningless
>     inline const int getMajorVersion()
>                      ^
> "libecs.hpp", line 60: warning: type qualifier on return type is
> meaningless
>     inline const int getMinorVersion()
>                      ^
> "libecs.hpp", line 65: warning: type qualifier on return type is
> meaningless
>     inline const int getMicroVersion()
>                      ^
> 1 error detected in the compilation of "libecs.cpp".
> make[5]: *** [libecs.lo] Error 1
> make[5]: Leaving directory `/workx5/ecell3/ecell/libecs'
> make[4]: *** [all-recursive] Error 1
> make[4]: Leaving directory `/workx5/ecell3/ecell/libecs'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory `/workx5/ecell3/ecell'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/workx5/ecell3/ecell'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/workx5/ecell3'
> make: *** [all] Error 2
> [root_at_master ecell3]#
>  
> The software is working fine with gcc, and as mpiCC is just a wrapper
> of gcc, it should not be a big problem to change the compiler. This is
> what i've done so far...and for the problem with pgCC part....
> pgCC-Warning-Unknown switch: -Wno-pmf-conversions
>  
> Wno-pmf-conversions is realted to C++, and the description in man page
> is,
> "Disable the diagnostic for converting a bound pointer to member
> function to a plain pointer"
>  
> is there is an mpi alternative for this? is there any other way of
> solving this problem?
>  
> Thanks,
>  
> Nithila.
>
>
>
> Discover Yahoo!
> Find restaurants, movies, travel & more fun for the weekend. Check it
> out!_______________________________________________
> This list is archived at http://www.lam-mpi.org/MailArchives/lam/

-- 
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/