Skip to content

AOCC: Use bash for compiler wrapper#3648

Merged
lexming merged 1 commit intoeasybuilders:developfrom
Thyre:aocc-use-bash-for-wrapper
Mar 12, 2025
Merged

AOCC: Use bash for compiler wrapper#3648
lexming merged 1 commit intoeasybuilders:developfrom
Thyre:aocc-use-bash-for-wrapper

Conversation

@Thyre
Copy link
Collaborator

@Thyre Thyre commented Mar 4, 2025

AOCC 4.2.0 and lower (and flang for AOCC 5.0.0) use compiler wrappers to include the GCC toolchain in the compiler command. The original compilers are renamed, and a shell script is created running exec which passes the original compiler name as an argument.

This however can fail if /bin/sh is used. On Ubuntu 22.04 LTS / Zorin OS 17, using exec -a causes the following error message, which then causes the sanity check to fail:

$ exec -a "echo" echo "Hello World"
sh: 1: exec: -a: not found

To work around this, use /bin/bash instead.

AOCC 4.2.0 and lower (and 'flang' for AOCC 5.0.0) use compiler wrappers
to include the GCC toolchain in the compiler command. The original
compilers are renamed, and a shell script is created running 'exec'
which passes the original compiler name as an argument.

This however can fail if '/bin/sh' is used. On Ubuntu 22.04 LTS, using
'exec -a' causes the following error message, which then causes the
sanity check to fail:

```
$ exec -a "echo" echo "Hello World"
sh: 1: exec: -a: not found
```

To work around this, use '/bin/bash' instead.

Signed-off-by: Jan André Reuter <j.reuter@fz-juelich.de>
@Thyre
Copy link
Collaborator Author

Thyre commented Mar 4, 2025

Test report by @Thyre

Overview of tested easyconfigs (in order)

  • SUCCESS AOCC-5.0.0-GCCcore-14.2.0.eb
  • SUCCESS AOCC-4.2.0-GCCcore-13.3.0.eb

Build succeeded for 2 out of 2 (2 easyconfigs in total)
ZAM054 - Linux Zorin OS 17, x86_64, 12th Gen Intel(R) Core(TM) i7-1260P, 1 x NVIDIA NVIDIA GeForce MX550, 565.57.01, Python 3.10.12
See https://gist.github.com/Thyre/fa203210cff2d9316838b1945aedccb4 for a full test report.

@Thyre
Copy link
Collaborator Author

Thyre commented Mar 9, 2025

@boegelbot please test @ jsc-zen3
EB_ARGS="AOCC-4.2.0-GCCcore-13.3.0.eb AOCC-5.0.0-GCCcore-14.2.0.eb AOCC-4.0.0-GCCcore-12.3.0.eb --installpath /tmp/$USER/pr3648"
CORE_CNT=16

@boegelbot
Copy link

@Thyre: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=3648 EB_ARGS="AOCC-4.2.0-GCCcore-13.3.0.eb AOCC-5.0.0-GCCcore-14.2.0.eb AOCC-4.0.0-GCCcore-12.3.0.eb --installpath /tmp/$USER/pr3648" EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3648 --ntasks="16" ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 5905

Test results coming soon (I hope)...

Details

- notification for comment with ID 2708815228 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link

Test report by @boegelbot

Overview of tested easyconfigs (in order)

  • SUCCESS AOCC-4.2.0-GCCcore-13.3.0.eb
  • SUCCESS AOCC-5.0.0-GCCcore-14.2.0.eb
  • SUCCESS AOCC-4.0.0-GCCcore-12.3.0.eb

Build succeeded for 3 out of 3 (3 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.5, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/2343f2986de96bd77eada3c2dbb9fd34 for a full test report.

Copy link
Contributor

@lexming lexming left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lexming lexming merged commit c8d3bee into easybuilders:develop Mar 12, 2025
41 checks passed
@boegel boegel added this to the 5.0.0 milestone Mar 18, 2025
@boegel boegel added the bug fix label Apr 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants