J'ai un programme Fortran que je lance sur macOS 10.12.6. Le code est compilé à l’aide d’un Makefile, dans lequel toutes les bibliothèques incluses ont également leur chemin. Pour une des bibliothèques (et une seule), mon exécutable ne semble pas pouvoir le trouver. Mon code est compilé correctement mais je reçois cette erreur d'exécution au début du programme:
dyld: Library not loaded: libslatec.so
Referenced from: path_to_PWD/exe/executable
Reason: image not found
Voici comment j'ajoute ma bibliothèque:
LIB_SLATEC = -L$(HOME)/usr/lib/slatec/lib -lslatec
Si je fais que ls $HOME/usr/lib/slatec/libje reçois: libslatec.so.
Courir otool -L path_to_exe | grep slatecje reçois: libslatec.so (compatibility version 0.0.0, current version 0.0.0). Je vois qu'il n'y a pas de chemin spécifié ici. Si je copie la bibliothèque dans mon lecteur, $PWDle code s'exécute comme prévu. J'ai également essayé d'ajouter le chemin d'accès à la bibliothèque LD_LIBRARY_PATHmais cela n'a rien changé.
Une idée du problème?
*.sosont un peu rares, et sont généralement à la place*.dylibsur macOS ...