Hello,
I try to create the wrappers for PGI 16.9 compilers for Intel MPI 16.3.210
I added a comment in a quite similar topic but It seems not to be updated.
I'm working on a node running CentOS 7.2
uname -a Linux jaws.cluster 3.10.0-327.36.2.el7.x86_64 #1 SMP Mon Oct 10 23:08:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
I check the version of the softwares I use :
# pgc++ --version pgc++ 16.9-0 64-bit target on x86-64 Linux -tp haswell The Portland Group - PGI Compilers and Tools Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. # mpirun --version Intel(R) MPI Library for Linux* OS, Version 5.1.3 Build 20160120 (build id: 14053) Copyright (C) 2003-2016, Intel Corporation. All rights reserved.
I follow the instructions in the file named README-intel-mpi-binding-kit.txt
# cd cxx # make MPI_INST=/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi CC=pgc++ NAME=pgc++ ARCH=intel64 mkdir -p intel64/lib && ar cr intel64/lib/libmpipgc++.a initcxx.o gcc -shared -Xlinker -x -Xlinker -soname=libmpipgc++.so.12 -o intel64/lib/libmpipgc++.so.12.0 initcxx.o (cd intel64/lib && if [ ! -f libmpipgc++.so.12 ]; then ln -s libmpipgc++.so.12.0 libmpipgc++.so.12; fi) (cd intel64/lib && if [ ! -f libmpipgc++.so ]; then ln -s libmpipgc++.so.12 libmpipgc++.so; fi) mkdir -p intel64/bin sed -e 's/g++//trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgc++/' -e 's/Docompchk\=yes/Docompchk\=no/' -e 's/mpigc$gver/mpipgc++/g' \ -e 's/rpath_opt\=.*/rpath_opt\=/' /trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/bin/mpigxx > intel64/bin/mpipgc++ sed: -e expression #1, char 8: unknown option to `s' make: *** [makedriver] Error 1 # cd ../f77 # make MPI_INST=/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi CC=pgf77 NAME=pgf77 ARCH=intel64 mkdir -p intel64/bin sed -e 's/g77//trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf77/' -e 's/Docompchk\=yes/Docompchk\=no/' \ -e 's/rpath_opt\=.*/rpath_opt\=/' /trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/bin/mpif77 > intel64/bin/mpipgf77 sed: -e expression #1, char 8: unknown option to `s' make: *** [makedriver] Error 1 # cd ../f90 # make MPI_INST=/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi CC=pgf90 NAME=pgf90 ARCH=intel64 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi_constants.f90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi_sizeofs.f90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi_base.f90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi.f90 mkdir -p intel64/lib && ar cr intel64/lib/libmpipgf90.a mpi.o mpi_base.o mpi_sizeofs.o mpi_constants.o mkdir -p intel64/include/pgf90 && mv *.mod intel64/include/pgf90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -shared -Xlinker -x -Xlinker -soname=libmpipgf90.so -o intel64/lib/libmpipgf90.so mpi.o mpi_base.o mpi_sizeofs.o mpi_constants.o -lrt -ldl pgf90-Error-Unknown switch: -Xlinker pgf90-Error-Unknown switch: -x pgf90-Error-Unknown switch: -Xlinker make: *** [makemod] Error 1
It works fine in the "c" directory.
Could you please tell me what's wrong with the three others ?
Thank you in advance
Regards,
Guy.