Verwenden Sie install_name_tool, was läuft schief?
-
24-10-2019 - |
Frage
Ich versuche, den Installationsweg eines Dylibs zu ändern, nachdem er gebaut wurde. ich benutze otool -L
Um zu überprüfen, was der aktuelle Pfad ist. Und dann tue ich:
$ install_name_tool -change /my/current/path/libmine.dylib \
/my/new/path/libmine.dylib libmine.dylib
Ich bekomme keinen Fehler, aber nichts ändert sich. Wenn ich den Weg erneut überprüfe, ist der alte noch da. Auch der neue Weg ist viel kürzer als das alte, also kein Problem, und ich denke, die Bibliothek wird sogar mit zusätzlicher Flagge für mehr Filepath -Raum zusammengestellt.
Irgendwelche Ideen?
Lösung
Auf der Mannseite für install_name_tool heißt es, dass -Change für Abhängigkeiten ist. Sie versuchen, den Namen der Bibliothek selbst zu ändern.
Nachdem ich gerade experimentiert hatte, stellte ich fest, dass ich den Namen eines Dylibs nicht ändern konnte, der im Dylib selbst erscheint, aber ich konnte die Namen anderer Abhängigkeiten ändern.
Mehr experimentiert haben: install_name_tool -id newname file
wird den Trick machen.