Skip to content

Correct INSTALL_TARBALL.md: gemc is dynamically linked, not static#163

Closed
zhaozhiwen wants to merge 1 commit into
gemc:mainfrom
zhaozhiwen:fix/123-tarball-linking-docs
Closed

Correct INSTALL_TARBALL.md: gemc is dynamically linked, not static#163
zhaozhiwen wants to merge 1 commit into
gemc:mainfrom
zhaozhiwen:fix/123-tarball-linking-docs

Conversation

@zhaozhiwen

Copy link
Copy Markdown
Collaborator

The generated INSTALL_TARBALL.md claimed "GEMC is statically linked against Geant4," but the packaging step (ci/package_install.sh) just cp -as the meson-install tree — no static relink — and that binary dynamically resolves ~30 libG4*.so plus libCLHEP. A user following the doc (source gemc.env, gemc -v) hits "cannot open shared object file" because no Geant4/CLHEP runtime is bundled or guaranteed on the host.

Per maintainer direction, this is the docs-only fix (the issue's Option A): make the documentation match the artifact rather than change linking. The text now states gemc is dynamically linked against Geant4 and CLHEP and that a matching runtime must be on LD_LIBRARY_PATH (e.g. by sourcing geant4.sh) before running, and notes the data files are likewise not bundled. Section header widened to "Geant4 runtime and data".

Docs-only change to the packaging heredoc; no packaging behavior changes.

Validation: bash -n ci/package_install.sh passes, and rendering the heredoc in isolation produces the intended markdown (escaped backticks stay literal, no command substitution).

Fixes #123

The generated INSTALL_TARBALL.md claimed "GEMC is statically linked
against Geant4," but the packaging step just copies the meson-install
binary (no static relink), and that binary dynamically resolves ~30
libG4*.so plus libCLHEP. A user following the doc (source gemc.env, run
gemc -v) hits "cannot open shared object file" because no Geant4/CLHEP
runtime is bundled or guaranteed on the host.

Make the doc match the artifact: state that gemc is dynamically linked
against Geant4 and CLHEP and that a matching runtime must be on
LD_LIBRARY_PATH (e.g. by sourcing geant4.sh) before running, and note the
data files are likewise not bundled. Section header widened to
"Geant4 runtime and data".

Docs-only change to the packaging heredoc; no packaging behavior changes.
Verified: bash -n passes and the heredoc renders the intended markdown
(escaped backticks stay literal).

Fixes gemc#123

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@maureeungaro

Copy link
Copy Markdown
Contributor

GEMC is statically linked to Geant4

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.

[Medium] Tarball is not self-contained: docs claim static Geant4 linking but gemc is dynamically linked

2 participants