PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

CUDA-x86.

Compiling OpenMPI 1.6 fails with PGI 12.8

 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling
View previous topic :: View next topic  
Author Message
Adam D



Joined: 14 Aug 2012
Posts: 1

PostPosted: Wed Aug 29, 2012 4:54 pm    Post subject: Compiling OpenMPI 1.6 fails with PGI 12.8 Reply with quote

The following occurs when using PGI 12.8 to compile OpenMPI 1.6 (any sub-version, including 1.6 and a 1.6.2 nightly). The OS is CentOS 5.8. Any ideas?

Code:
*** C++ compiler and preprocessor
checking whether we are using the GNU C++ compiler... no
checking whether pgcpp accepts -g... no
checking dependency style of pgcpp... none
checking how to run the C++ preprocessor... /lib/cpp
checking for the C++ compiler vendor... unknown
checking if C and C++ are link compatible... no
**********************************************************************
* It appears that your C++ compiler is unable to link against object
* files created by your C compiler.  This generally indicates either
* a conflict between the options specified in CFLAGS and CXXFLAGS
* or a problem with the local compiler installation.  More
* information (including exactly what command was given to the
* compilers and what error resulted when the commands were executed) is
* available in the config.log file in this directory.
**********************************************************************
configure: error: C and C++ compilers are not link compatible.  Can not continue.


Edit: corrected OS. Oops, wrong server. :)
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6120
Location: The Portland Group Inc.

PostPosted: Thu Aug 30, 2012 12:34 pm    Post subject: Reply with quote

Hi Adam,

Can you double check that you're able to compile a simple program using both pgcpp and pgcc? Also, what configure options are you using?

Best Regards,
Mat
Back to top
View user's profile
JosephFarran45106



Joined: 29 Jul 2010
Posts: 2

PostPosted: Tue Jan 15, 2013 4:00 pm    Post subject: Reply with quote

Hi All.

I too am not able to compile OpenMPI 1.6.x I tried 1.6.0 and 1.6.3 and it fails with PGI 12.10.

My PGI compilers work just fine:

[jfarran@hpc ~]$ module load pgi/12.10
[jfarran@hpc ~]$ pgcpp simple.c
[jfarran@hpc ~]$ file a.out
a.out: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
[jfarran@hpc ~]$ pgcc simple.c
[jfarran@hpc ~]$ file a.out
a.out: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6120
Location: The Portland Group Inc.

PostPosted: Tue Jan 15, 2013 5:14 pm    Post subject: Reply with quote

Hi Joseph,

I just downloaded OpenMPI 1.6.3 and didn't have any issues getting it to configure, build, and install with PGI 12.10. What error are you getting? How are you setting your environment variables? In some shells, the "env" command doesn't work so you may need to set the environment variables before running configure.

- Mat
Back to top
View user's profile
JosephFarran45106



Joined: 29 Jul 2010
Posts: 2

PostPosted: Tue Jan 15, 2013 6:16 pm    Post subject: Reply with quote

mkcolg wrote:
Hi Joseph,

I just downloaded OpenMPI 1.6.3 and didn't have any issues getting it to configure, build, and install with PGI 12.10. What error are you getting? How are you setting your environment variables? In some shells, the "env" command doesn't work so you may need to set the environment variables before running configure.

- Mat


Hi Matt.

Here is my config file and the last few lines of where it is aborting. Compiling on CentOS 6.3.

module load gcc/4.7.2
module load pgi/12.10
DEST=/data/apps/mpi/openmpi-1.6.0/pgi-12.10

CPP=`which pgprepro` \
CC=`which pgcc` \
CXX=`which pgcpp` \
F77=`which pgfortran` \
FC=`which pgfortran` \
F90=`which pgfortran` \
./configure \
--with-sge \
--prefix=$DEST

make[1]: Leaving directory `/data/apps/sources/openmpi-1.6/orte'
Making install in ompi
make[1]: Entering directory `/data/apps/sources/openmpi-1.6/ompi'
Making install in include
make[2]: Entering directory `/data/apps/sources/openmpi-1.6/ompi/include'
make[3]: Entering directory `/data/apps/sources/openmpi-1.6/ompi/include'
make[3]: Nothing to be done for `install-exec-am'.
test -z "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include" || /bin/mkdir -p "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include"
/usr/bin/install -c -m 644 mpif-common.h mpif-mpi-io.h '/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include'
test -z "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include" || /bin/mkdir -p "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include"
test -z "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include" || /bin/mkdir -p "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include"
test -z "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include" || /bin/mkdir -p "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include"
/usr/bin/install -c -m 644 mpi.h mpi-ext.h mpi_portable_platform.h mpif.h mpif-config.h '/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include'
test -z "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include/openmpi" || /bin/mkdir -p "/data/apps/mpi/openmpi-1.6.0/pgi-12.10/include/openmpi"
make[3]: Leaving directory `/data/apps/sources/openmpi-1.6/ompi/include'
make[2]: Leaving directory `/data/apps/sources/openmpi-1.6/ompi/include'
Making install in datatype
make[2]: Entering directory `/data/apps/sources/openmpi-1.6/ompi/datatype'
CC ompi_datatype_module.lo
PGC-W-0114-More than one type specified (/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h: 149)
PGC-W-0143-Useless typedef declaration (no declarators present) (/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h: 149)
PGC-S-0039-Use of undeclared variable INT64_T (ompi_datatype_module.c: 259)
PGC-S-0039-Use of undeclared variable AINT (ompi_datatype_module.c: 259)
PGC-S-0074-Non-constant expression in initializer (ompi_datatype_module.c: 259)
PGC-W-0093-Type cast required for this conversion of constant (ompi_datatype_module.c: 259)
PGC/x86-64 Linux 12.10-0: compilation completed with severe errors
make[2]: *** [ompi_datatype_module.lo] Error 1
make[2]: Leaving directory `/data/apps/sources/openmpi-1.6/ompi/datatype'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/data/apps/sources/openmpi-1.6/ompi'
make: *** [install-recursive] Error 1

We have our own built gcc 4.7.2. Not sure why it is trying to use gcc 4.4.6 above?
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling All times are GMT - 7 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group