Skip to content

Conversation

@jackal1-66
Copy link
Contributor

Set environment variables for Herwig, GSL, ThePEG, and nlohmann_json packages. Tests with O2DPG generators were failing because these path are included when loading the environments, but not at building time.

Set environment variables for Herwig, GSL, ThePEG, and nlohmann_json packages. Tests with O2DPG generators were failing because these path are included when loading the environments, but not at building time.

# Add Herwig, GSL, ThePEG and nlohmann_json packages to root include path and library path at building time
export ROOT_INCLUDE_PATH="$THEPEG_ROOT/include:$HERWIG_ROOT/include:$GSL_ROOT/include:$NLOHMANN_JSON_ROOT/include:$ROOT_INCLUDE_PATH"
export LD_LIBRARY_PATH="$THEPEG_ROOT/lib/ThePEG:$HERWIG_ROOT/lib/Herwig:$GSL_ROOT/lib:$LD_LIBRARY_PATH"
Copy link
Collaborator

Choose a reason for hiding this comment

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

a better place for this is direclty in the "env" section of each recipe (which constructs the build environment for alibuild recipes). Then you don't have to do it in each recipe using Herwig...

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I had multiple issues while reproducing this on a local docker due to some path issues. We tested prepend-path with Giulio but it didn't work (aliBuild fails while building ThePEG or Herwig). I will check if env works, I would prefere it over exporting the path directly.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Ok. I actually meant prepend_path. Not sure what the difference with env is... but anyways I think that such yaml setting would be more appropriate than manually doing exports.

Copy link
Member

@ktf ktf Oct 29, 2025

Choose a reason for hiding this comment

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

env sets the variable, prepend_path adds to it.

Historically, prepend_path and env are available only in dependencies, not in the actual build script, to make sure that the script was "standalone" and could be easily cut & pasted to reproduce issues. That said, the correct solution here would be to have the changes in HERWIG and ThePeg, however that cannot be done due to a relocation issue in pythia8, IIUC. Once we fix it, we can clean this up.

@jackal1-66
Copy link
Contributor Author

PR replaced by AliceO2Group/O2DPG#2174

@jackal1-66 jackal1-66 closed this Oct 29, 2025
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

Successfully merging this pull request may close these issues.

3 participants