Can the NVC compiler be used to compile openmpi?

I see that the openmpi5. x version has a fault-tolerant system, so I want to use openmpi5.0 and openacc to complete my project. I downloaded openmpi-5.0.0rc11 and previously used./configure – prefix=usr/local/openmpi to complete the installation. However, I found that this seemed to be compiled using the gcc compiler, so I searched for some methods again, such as

./configure CC=pgcc CXX=pgCC FC=pgf77 F90=pgf90 --prefix=/usr/local/openmpi

make

make install

But there seems to be a problem in the last step
The prompt error is as follows

/home/orin/Downloads/openmpi-5.0.0rc11/3rd-party/openpmix/libtool: line 10537: pgcc: command not found

libtool: error: error: relink 'libpmix.la' with the above command before installing it

Make [5]: * * * [Makefile: 1033: install libLTLIBRARIES] Error 1

Make [5]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/3rd party/openmix/src'

Make [4]: * * * [Makefile: 1494: install am] Error 2

Make [4]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/3rd party/openmix/src'

Make [3]: * * * [Makefile: 1331: install recursive] Error 1

Make [3]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/3rd party/openmix/src'

Make [2]: * * * [Makefile: 857: install recursive] Error 1

Make [2]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/3rd party/openmix'

Make [1]: * * * [Makefile: 1403: install recursive] Error 1

Make [1]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/3rd party'

Make: * * * [Makefile: 1530: install recursive] Error 1

Is there a problem with my compilation method?

The compiler I am using is HPCSDK23.1

The device used is Jetson Orin 32GB

Let me ask the folks that do our OpenMPI builds for our recipe. Though I’m not sure they’ve done anything with OpenMPI 5.0 since it’s not been released yet, just release candidates.

Though the error appears that libtool can’t find pgcc. Do you have the compiler bin directory in your PATH?

-Mat

My bashrc file displays as follows

export PATH=/usr/local/cuda-11.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH
#export CUDA_HOME=$CUDA_HOME:/usr/local/cuda


MANPATH=$MANPATH:/opt/nvidia/hpc_sdk/Linux_aarch64/23.1/compilers/man; export MANPATH
PATH=/opt/nvidia/hpc_sdk/Linux_aarch64/23.1/compilers/bin:$PATH; export PATH

export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/cuda-11.4/targets/aarch64-linux/include

export PATH=/opt/nvidia/hpc_sdk/Linux_aarch64/23.1/comm_libs/mpi/bin:$PATH
export MANPATH=$MANPATH:/opt/nvidia/hpc_sdk/Linux_aarch64/23.1/comm_libs/mpi/man

#export PATH="$PATH:/usr/local/openmpi/bin"
#export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/openmpi/lib/"

#export PATH=/usr/local/openmpi/bin:$PATH
#export MANPATH=$MANPATH:/usr/local/openmpi/man

export NV_ACC_TIME=1
#export NV_ACC_DEBUG=1

I only added the commands required for HPCSDK to bashrc

I’m not sure why libtool can’t find pgcc, it should be located under “/opt/nvidia/hpc_sdk/Linux_aarch64/23.1/compilers/bin”.

Maybe set “CC=/opt/nvidia/hpc_sdk/Linux_aarch64/23.1/compilers/bin/pgcc”?

Perhaps there was a problem with my installation. I just reinstalled it again

Making install in config

Make [1]: Enter the directory '/home/orin/Downloads/openmpi-5.0.0rc11/config'

Make [2]: Enter the directory '/home/orin/Downloads/openmpi-5.0.0rc11/config'

Make [2]: No need to do anything for 'install exec am'.

Make [2]: No need to do anything for 'install data am'.

Make [2]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/config'

Make [1]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/config'

Making install in contrib

Make [1]: Enter the directory '/home/orin/Downloads/openmpi-5.0.0rc11/contrib'

Make [2]: Enter the directory '/home/orin/Downloads/openmpi-5.0.0rc11/contrib'

Make [2]: No need to do anything for 'install exec am'.

/usr/bin/mkdir -p '/usr/local/openmpi/share/openmpi/amca-param-sets'

/usr/bin/install -c -m 644 amca-param-sets/example.conf amca-param-sets/ft-mpi '/usr/local/openmpi/share/openmpi/amca-param-sets'

/Usr/bin/install: Unable to delete '/usr/local/openmpi/share/openmpi/amca param sets/example. conf': Insufficient permissions

/Usr/bin/install: Unable to delete '/usr/local/openmpi/share/openmpi/amca param sets/ft mpi': Insufficient permissions

Make [2]: * * * [Makefile: 1456: install dist_amca_paramDATA] Error 1

Make [2]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/contrib'

Make [1]: * * * [Makefile: 1548: install am] Error 2

Make [1]: Leave the directory '/home/orin/Downloads/openmpi-5.0.0rc11/contrib'

Make: * * * [Makefile: 1530: install recursive] Error 1

Previously, I used to use sudo make install

I just ran it again using make install

I’m not sure if it would be helpful to you

I set the absolute path as you mentioned, and the installation was successful. The code is as follows


./configure CC=/opt/nvidia/hpc_ sdk/Linux_ aarch64/23.1/compilers/bin/pgcc CXX=pgCC FC=/opt/nvidia/hpc_ sdk/Linux_ aarch64/23.1/compilers/bin/pgf77 F90=/opt/nvidia/hpc_ sdk/Linux_ aarch64/23.1/compilers/bin/pgf90 --prefix=/usr/local/openmpi

Thank you very much, Mat

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.