Julia - Erreur de précompilation de packages

Bonjour,

En utilisant l’environnement Julia nouvellement installé, je rencontre un problème avec plusieurs packages dont MLJ :

Pkg.add("MLJ")

Failed to precompile MLJ [add582a8-e3ab-11e8-2d5e-e98b27df1bc7] to /shared/home/<login>/.julia/compiled/v1.6/MLJ/jl_QSGB6D.
ERROR: LoadError: InitError: could not load library "libmbedcrypto.so.5"
libmbedcrypto.so.5: cannot open shared object file: No such file or directory

Il semble que le problème soit connu et relatif à l'architecture, il vient du package MbedTLS entraînant des erreurs en cascade via dépendances (liés à CentOS ou ArchLinux, documentés ici : https://github.com/JuliaLang/julia/issues/40204 et https://github.com/JuliaGeo/NetCDF.jl/issues/144). Le problème semble venir de la distribution conda et semble impossible à résoudre sans droits admin (une solution suggérée consisterait à créer un symbolic link pour désinstancier libmbedcrypto : ln -s /usr/lib/libmbedcrypto.so /usr/lib/libmbedcrypto.so.5).

Merci d'avance !

Salut,

  • Premièrement, une petite parenthèse concernant le cluster IFB: on ne va pas creer le lien symbolique à la main, parce que c'est moche (pointer vers une autre version de la lib) et que de toute façon on évite au maximum les actions manuelles et spécifiques a chaque environnement. Du coup on va attendre que ce soit corrigé upstream (coté julia et/ou conda)

  • Deuxièmement une astuce qui permet "souvent" de régler ce genre de souci quand on a pas accès aux répertoire systeme (quand on est pas root):

module load julia/1.6.2
mkdir lib
cd lib
ln -s /shared/ifbstor1/software/miniconda/envs/julia-1.6.2/lib/libmbedcrypto.so ./libmbedcrypto.so.5
export LD_LIBRARY_PATH=$(pwd) 
julia

Puis on reteste la compilation directement dans julia.

Je viens de tester sur mon compte perso, a priori ca marche.

2 « J'aime »