Skip to content

add custom easyconfig parameter with_cxx_backtrace to GCC easyblock to enable the build of the libstdcxx-backtrace library#3538

Open
maxim-masterov wants to merge 4 commits intoeasybuilders:developfrom
maxim-masterov:gcc_py
Open

add custom easyconfig parameter with_cxx_backtrace to GCC easyblock to enable the build of the libstdcxx-backtrace library#3538
maxim-masterov wants to merge 4 commits intoeasybuilders:developfrom
maxim-masterov:gcc_py

Conversation

@maxim-masterov
Copy link
Copy Markdown
Contributor

Add an option to build a static library for the stack trace support in C++23.

@maxim-masterov maxim-masterov changed the title Add extra flag to enable the build of the libstdcxx-backtrace library. [gcc.py] Add extra flag to enable the build of the libstdcxx-backtrace library. Dec 19, 2024
@boegel boegel added this to the release after 5.1.1 milestone Jul 3, 2025
@Thyre
Copy link
Copy Markdown
Collaborator

Thyre commented Jan 19, 2026

@boegelbot please test @ jsc-zen3
EB_ARGS="GCCcore-13.3.0.eb GCCcore-14.2.0.eb GCCcore-14.3.0.eb GCCcore-15.2.0.eb --installpath=/tmp/$USER/ebpr-3538 --try-amend=with_cxx_backtrace=True"

Comment thread easybuild/easyblocks/g/gcc.py Outdated
Comment on lines +647 to +650
# enable builind of libstdc++_libbacktrace
if self.cfg['with_cxx_backtrace']:
self.configopts += " --enable-libstdcxx-backtrace"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

With the current approach, having with_cxx_backtrace=False by default, we should probably also disable support via a flag for GCC versions supporting backtrace.

We could go the route and define with_cxx_backtrace as None by default, passing no flag and just use what GCC has by default. Users could then pass True to explicitly enable support, and False to explicitly disable support.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

+1 on this

@maxim-masterov Are you up for updating the PR accordingly?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

done

@boegelbot
Copy link
Copy Markdown

@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=3538 EB_ARGS="GCCcore-13.3.0.eb GCCcore-14.2.0.eb GCCcore-14.3.0.eb GCCcore-15.2.0.eb --installpath=/tmp/$USER/ebpr-3538 --try-amend=with_cxx_backtrace=True" EB_CONTAINER= EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3538 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

Details

- notification for comment with ID 3766977502 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
Copy Markdown

Test report by @boegelbot

Overview of tested easyconfigs (in order)

  • SUCCESS GCCcore-13.3.0.eb

  • SUCCESS GCCcore-14.2.0.eb

  • SUCCESS GCCcore-14.3.0.eb

  • SUCCESS GCCcore-15.2.0.eb

Build succeeded for 4 out of 4 (total: 4 hours 23 mins 41 secs) (4 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.7, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.23
See https://gist.github.com/boegelbot/3d0847906b035f4826973f05bc250f33 for a full test report.

@boegel boegel changed the title [gcc.py] Add extra flag to enable the build of the libstdcxx-backtrace library. add custom easyconfig parameter with_cxx_backtrace to GCC easyblock to enable the build of the libstdcxx-backtrace library Jan 28, 2026
Change 'with_cxx_backtrace' default value to None and update condition for enabling libstdc++_libbacktrace.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants