Store version info or MD5 hash of the shared TBB objects

Aperta
#164 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cpp

Direzione di ricerca

Start by examining the RcppParallel v5.1.2 symlink handling for externally linked TBB libraries and the loading path for shared TBB objects. Investigate how TBB_INTERFACE_VERSION or an MD5 hash can be recorded at build time and checked before runtime loading. Done means mismatches produce a warning recommending package reinstallation rather than silently loading incompatible or missing libraries.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

RcppParallel v5.1.2+ creates symlinks of TBB libraries into the package directory if externally linked (see a1fddba85101886b35123c73054c0d904f747d11 & #161). This can break RcppParallel when the original files are moved, removed, or upgraded to an incompatible version (undefined references). We need to create a function that stores the version info (e.g., TBB_INTERFACE_VERSION), or MD5 hash of the shared TBB objects, at build time and check them at runtime, before loading. If there's a mismatch, we continue with a warning that recommends reinstalling the package to relink to (or build) the TBB libraries.

It's important to ensure the integrity of the shared TBB objects, before loading them. This will also inform the users if the package loading failed due to this issue.

Lingua principale
C++
Stelle
173
Fork
60
Merge medio
1h 55m
PR unite (30g)
2

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di RcppCore/RcppParallel

Tutte le issue di RcppCore/RcppParallel

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.