407 votes

Dyld: Bibliothèque non chargée ... Raison : Image non trouvée

Lorsque j'essaie d'exécuter un exécutable que j'ai reçu sur Mac OS X, j'obtiens l'erreur suivante

dyld: Library not loaded: libboost_atomic.dylib
  Referenced from: /Users/"Répertoire dans lequel se trouve mon exécutable"
  Reason: image not found
Trace/BPT trap:5

J'ai installé les bibliothèques boost et elles se trouvent dans /opt/local/lib. Je pense que le problème a quelque chose à voir avec l'exécutable ne regardant que dans le répertoire dans lequel il se trouve, car quand je colle 'libboost_atomic.dylib' là-bas, il ne le remarque plus. Malheureusement, il se plaint alors de ne pas trouver la prochaine bibliothèque boost.

Y a-t-il un moyen facile de corriger cela?

0 votes

Si vous avez encore des problèmes, utilisez la méthode de ce sujet

0 votes

Essayez de désinstaller python3.7.3 en utilisant ceci : huybien.com/how-to-completely-uninstall-python-on-macos

3voto

Douglas Pfeifer Points 91

J'ai corrigé ce problème en utilisant Produit > Nettoyer le dossier de construction (CommandeMajK), ce qui crée une nouvelle construction propre, vraiment étrange.

3voto

pkamb Points 918

Pour mon framework, j'utilisais un sous-projet Xcode ajouté en tant que sous-module git.

Je pense que j'obtenais cette erreur parce que je signais le framework avec une équipe de signature différente de celle de mon application principale. (changement d'équipe pour l'application ; oubli de changer pour le framework)

La solution est de ne pas signer à l'intérieur du projet du framework. Au lieu de cela, dans la section Cible > Général > Cadres, bibliothèques et contenus intégrés de l'application principale, signer le framework via Intégrer et signer.

Si je sélectionne Ne pas intégrer ou Intégrer sans signer, je reçois à la place l'erreur :

FRAMEWORK non valide pour une utilisation dans un processus utilisant la validation de la bibliothèque : le fichier cartographié n'a pas de cdhash, complètement non signé ? Le code doit être au moins signé en mode ad hoc.

2voto

hailuodev Points 716

Vous pouvez utiliser sudo install_name_tool -change pour changer le chemin du dylib Et sudo install_name_tool -id pour changer le nom du dylib

2voto

Saranjith Points 4137

Xcode 11.1 & Swift 5.1

Correctif rapide

Assurez-vous d'abord que l'option d'intégration des bibliothèques externes est sélectionnée dans l'onglet Général, Bibliothèques intégrées.

Si ça ne fonctionne toujours pas...

Cela se produit parce que vous avez des versions de bibliothèques différentes et non assorties.

Mettez à jour les Pods

pod update

Important : Vérifiez que toutes les bibliothèques sont incluses dans la liste des cadres et bibliothèques de build et que vous avez donné l'option de les intégrer dans le build

Fonctionne juste super bien

2voto

bormat Points 479

Si vous utilisez virtualenv, il suffit de supprimer le dossier de votre environnement et de le recréer avec cette commande virtualenv --python=/usr/local/bin/python3 le_nom_de_mon_env

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X