Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't Compile OpenMPI version 4.1.4 with GCC 12.2.0 #886

Open
nuttapongc opened this issue Jan 22, 2024 · 5 comments
Open

Can't Compile OpenMPI version 4.1.4 with GCC 12.2.0 #886

nuttapongc opened this issue Jan 22, 2024 · 5 comments

Comments

@nuttapongc
Copy link

I tried to install OpenMPI version 4.1.4 with GCC 12.2.0 with these error.

make[2]: Leaving directory '/data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/opal'
Making all in mca/common/cuda
make[2]: Entering directory '/data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/opal/mca/common/cuda'
  CC       common_cuda.lo
  LN_S     libmca_common_cuda.la
  CCLD     libmca_common_cuda.la
make[2]: Leaving directory '/data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/opal/mca/common/cuda'
Making all in mca/common/ofi
make[2]: Entering directory '/data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/opal/mca/common/ofi'
  CC       common_ofi.lo
  LN_S     libmca_common_ofi.la
  CCLD     libmca_common_ofi.la
/data/apps/modules/software/binutils/2.39-GCCcore-12.2.0/bin/ld: cannot find -luuid: No such file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1921: libmca_common_ofi.la] Error 1
make[2]: Leaving directory '/data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/opal/mca/common/ofi'
make[1]: *** [Makefile:2432: all-recursive] Error 1
make[1]: Leaving directory '/data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/opal'
make: *** [Makefile:1915: all-recursive] Error 1
 (at easybuild/tools/run.py:681 in parse_cmd_output)
== 2024-01-19 14:58:34,826 build_log.py:267 INFO ... (took 11 mins 38 secs)
== 2024-01-19 14:58:34,826 filetools.py:2012 INFO Removing lock /data/apps/modules/software/.locks/_data_apps_modules_software_OpenMPI_4.1.4-GCC-12.2.0.lock...== 2024-01-19 14:58:34,833 filetools.py:383 INFO Path /data/apps/modules/software/.locks/_data_apps_modules_software_OpenMPI_4.1.4-GCC-12.2.0.lock successfully removed.
== 2024-01-19 14:58:34,834 filetools.py:2016 INFO Lock removed: /data/apps/modules/software/.locks/_data_apps_modules_software_OpenMPI_4.1.4-GCC-12.2.0.lock
== 2024-01-19 14:58:34,834 easyblock.py:4277 WARNING build failed (first 300 chars): cmd " make  -j 32 " exited with exit code 2 and output:
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /data/apps/modules/build/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config/missing autoconf
configure.ac:64: warning: The macro `AC_HELP_STRING' is obsolete.
configure.ac:64: You should run autoupdat
== 2024-01-19 14:58:34,834 easyblock.py:328 INFO Closing log for application name OpenMPI version 4.1.4
[modules@node~]$

I'm not sure how can i fix this.

@ocaisa
Copy link
Member

ocaisa commented Jan 22, 2024

You need to add a dependency on https://github.com/easybuilders/easybuild-easyconfigs/blob/develop/easybuild/easyconfigs/u/util-linux/util-linux-2.38.1-GCCcore-12.2.0.eb which provides the missing libuuid.so, this hasn't been an issue for others as it is very common to find this in the operating system.

To add the dependency, you need to edit the easyconfig file and change the dependencies section to

dependencies = [
    ('zlib', '1.2.12'),
    ('hwloc', '2.8.0'),
    ('libevent', '2.1.12'),
    ('UCX', '1.13.1'),
    ('libfabric', '1.16.1'),
    ('PMIx', '4.2.2'),
    ('UCC', '1.1.0'),
    ('util-linux', '2.38.1'),  # Added a missing dependency on libuuid which is provided by util-linux
]

@nuttapongc
Copy link
Author

nuttapongc commented Jan 23, 2024

Hi,
It passed from that error but still stuck at the new error.

make[4]: *** [Makefile:2185: test-suite.log] Error 1
make[4]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/test/util'
make[3]: *** [Makefile:2293: check-TESTS] Error 2
make[3]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/test/util'
make[2]: *** [Makefile:2380: check-am] Error 2
make[2]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/test/util'
make[1]: *** [Makefile:1777: check-recursive] Error 1
make[1]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/test'
make: *** [Makefile:1915: check-recursive] Error 1
 (at easybuild/tools/run.py:681 in parse_cmd_output)
== 2024-01-23 08:12:51,020 build_log.py:267 INFO ... (took 1 min 43 secs)
== 2024-01-23 08:12:51,021 filetools.py:2012 INFO Removing lock /data/apps/modules/software/.locks/_data_apps_modules_software_OpenMPI_4.1.4-GCC-12.2.0.lock...
== 2024-01-23 08:12:51,029 filetools.py:383 INFO Path /data/apps/modules/software/.locks/_data_apps_modules_software_OpenMPI_4.1.4-GCC-12.2.0.lock successfully removed.
== 2024-01-23 08:12:51,029 filetools.py:2016 INFO Lock removed: /data/apps/modules/software/.locks/_data_apps_modules_software_OpenMPI_4.1.4-GCC-12.2.0.lock
== 2024-01-23 08:12:51,029 easyblock.py:4277 WARNING build failed (first 300 chars): cmd "make check" exited with exit code 2 and output:
Making check in config
make[1]: Entering directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config'
Making
== 2024-01-23 08:12:51,030 easyblock.py:328 INFO Closing log for application name OpenMPI version 4.1.4
== 2024-01-23 08:12:51,030 build_log.py:267 INFO FAILED: Installation ended unsuccessfully (build directory: /tmp/modules/OpenMPI/4.1.4/GCC-12.2.0): build failed (first 300 chars): cmd "make check" exited with exit code 2 and output:
Making check in config
make[1]: Entering directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config'
Making (took 30 mins 5 secs)
== 2024-01-23 08:12:51,031 easyblock.py:4415 WARNING 2 possible error(s) were detected in the build logs, please verify the build.
== 2024-01-23 08:12:51,032 build_log.py:267 INFO Results of the build can be found in the log file(s) /tmp/eb-f0isotwk/easybuild-OpenMPI-4.1.4-20240123.074245.mZGyR.log
== 2024-01-23 08:12:51,041 build_log.py:171 ERROR EasyBuild crashed with an error (at easybuild/base/exceptions.py:126 in __init__): build failed (first 300 chars): cmd "make check" exited with exit code 2 and output:
Making check in config
make[1]: Entering directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config'
Making (at easybuild/main.py:138 in build_and_install_software)
== 2024-01-23 08:12:51,046 build_log.py:171 ERROR EasyBuild crashed with an error (at easybuild/base/exceptions.py:126 in __init__): Build of /data/apps/modules/software/EasyBuild/4.8.2/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-12.2.0.eb failed (err: 'build failed (first 300 chars): cmd "make check" exited with exit code 2 and output:\nMaking check in config\nmake[1]: Entering directory \'/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config\'\nmake[1]: Nothing to be done for \'check\'.\nmake[1]: Leaving directory \'/tmp/modules/OpenMPI/4.1.4/GCC-12.2.0/openmpi-4.1.4/config\'\nMaking') (at easybuild/main.py:176 in build_and_install_softwar

Thanks

@ocaisa
Copy link
Member

ocaisa commented Jan 28, 2024

This doesn't show the actual error, you would need to find the source of the error in the log file.

@nuttapongc
Copy link
Author

nuttapongc commented Jan 30, 2024

It is like error from test after compile. I'm not sure how can i trace the error from easybuild because the output from previous post is from easybuild log
Would you like me to upload that log here? I've tried to again but still error

@ocaisa
Copy link
Member

ocaisa commented Feb 29, 2024

In the build directory being used by EasyBuild, there should be a config.log file. In there you should be able to search for Error and see what the actual cause of the problem is

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants