Matt Thompson
2017-03-22 19:12:36 UTC
All, I'm hoping one of you knows what I might be doing wrong here. I'm
trying to use Open MPI 2.1.0 for PGI 16.10 (Community Edition) on macOS.
Now, I built it a la:
http://www.pgroup.com/userforum/viewtopic.php?p=21105#21105
and found that it built, but the resulting mpifort, etc were just not good.
Couldn't even do Hello World.
So, I thought I'd start from the beginning. I tried running:
configure --disable-wrapper-rpath CC=pgcc CXX=pgc++ FC=pgfortran
--prefix=/Users/mathomp4/installed/Compiler/pgi-16.10/openmpi/2.1.0
but when I did I saw this:
*** C++ compiler and preprocessor
checking whether we are using the GNU C++ compiler... yes
checking whether pgc++ accepts -g... yes
checking dependency style of pgc++... none
checking how to run the C++ preprocessor... pgc++ -E
checking for the C++ compiler vendor... gnu
Well, that's not the right vendor. So, I took a look at configure and I saw
that at least some detection for PGI was a la:
pgCC* | pgcpp*)
# Portland Group C++ compiler
case `$CC -V` in
*pgCC\ [1-5].* | *pgcpp\ [1-5].*)
pgCC* | pgcpp*)
# Portland Group C++ compiler
lt_prog_compiler_wl_CXX='-Wl,'
lt_prog_compiler_pic_CXX='-fpic'
lt_prog_compiler_static_CXX='-Bstatic'
;;
Ah. PGI 16.9+ now use pgc++ to do C++ compiling, not pgcpp. So, I hacked
configure so that references to pgCC (nonexistent on macOS) are gone and
all pgcpp became pgc++, but:
*** C++ compiler and preprocessor
checking whether we are using the GNU C++ compiler... yes
checking whether pgc++ accepts -g... yes
checking dependency style of pgc++... none
checking how to run the C++ preprocessor... pgc++ -E
checking for the C++ compiler vendor... gnu
Well, at this point, I think I'm stopping until I get help. Will this chunk
of configure always return gnu for PGI? I know the C part returns 'portland
group':
*** C compiler and preprocessor
checking for gcc... (cached) pgcc
checking whether we are using the GNU C compiler... (cached) no
checking whether pgcc accepts -g... (cached) yes
checking for pgcc option to accept ISO C89... (cached) none needed
checking whether pgcc understands -c and -o together... (cached) yes
checking for pgcc option to accept ISO C99... none needed
checking for the C compiler vendor... portland group
so I thought the C++ section would as well. I also tried passing in
--enable-mpi-cxx, but that did nothing.
Is this just a red herring? My real concern is with pgfortran/mpifort, but
I thought I'd start with this. If this is okay, I'll move on and detail the
fortran issues I'm having.
Matt
trying to use Open MPI 2.1.0 for PGI 16.10 (Community Edition) on macOS.
Now, I built it a la:
http://www.pgroup.com/userforum/viewtopic.php?p=21105#21105
and found that it built, but the resulting mpifort, etc were just not good.
Couldn't even do Hello World.
So, I thought I'd start from the beginning. I tried running:
configure --disable-wrapper-rpath CC=pgcc CXX=pgc++ FC=pgfortran
--prefix=/Users/mathomp4/installed/Compiler/pgi-16.10/openmpi/2.1.0
but when I did I saw this:
*** C++ compiler and preprocessor
checking whether we are using the GNU C++ compiler... yes
checking whether pgc++ accepts -g... yes
checking dependency style of pgc++... none
checking how to run the C++ preprocessor... pgc++ -E
checking for the C++ compiler vendor... gnu
Well, that's not the right vendor. So, I took a look at configure and I saw
that at least some detection for PGI was a la:
pgCC* | pgcpp*)
# Portland Group C++ compiler
case `$CC -V` in
*pgCC\ [1-5].* | *pgcpp\ [1-5].*)
pgCC* | pgcpp*)
# Portland Group C++ compiler
lt_prog_compiler_wl_CXX='-Wl,'
lt_prog_compiler_pic_CXX='-fpic'
lt_prog_compiler_static_CXX='-Bstatic'
;;
Ah. PGI 16.9+ now use pgc++ to do C++ compiling, not pgcpp. So, I hacked
configure so that references to pgCC (nonexistent on macOS) are gone and
all pgcpp became pgc++, but:
*** C++ compiler and preprocessor
checking whether we are using the GNU C++ compiler... yes
checking whether pgc++ accepts -g... yes
checking dependency style of pgc++... none
checking how to run the C++ preprocessor... pgc++ -E
checking for the C++ compiler vendor... gnu
Well, at this point, I think I'm stopping until I get help. Will this chunk
of configure always return gnu for PGI? I know the C part returns 'portland
group':
*** C compiler and preprocessor
checking for gcc... (cached) pgcc
checking whether we are using the GNU C compiler... (cached) no
checking whether pgcc accepts -g... (cached) yes
checking for pgcc option to accept ISO C89... (cached) none needed
checking whether pgcc understands -c and -o together... (cached) yes
checking for pgcc option to accept ISO C99... none needed
checking for the C compiler vendor... portland group
so I thought the C++ section would as well. I also tried passing in
--enable-mpi-cxx, but that did nothing.
Is this just a red herring? My real concern is with pgfortran/mpifort, but
I thought I'd start with this. If this is okay, I'll move on and detail the
fortran issues I'm having.
Matt
--
Matt Thompson
Man Among Men
Fulcrum of History
Matt Thompson
Man Among Men
Fulcrum of History