delocate.delocating.DelocationError: .dylibs/libgfortran.5.dylib already exists
See original GitHub issueThis worked in the past but suddenly I get an error when running delocate-path
on a folder where multiple executables rely on the same dependency (I’m assuming that’s what the error is about): “delocate.delocating.DelocationError: .dylibs/libgfortran.5.dylib already exists”. Am I doing something wrong?
Issue Analytics
- State:
- Created 4 years ago
- Comments:8 (2 by maintainers)
Top Results From Across the Web
Issues · matthew-brett/delocate - GitHub
delocate-wheel sets invalid relative paths to delocated dylibs (related to "purelib" ... DelocationError: .dylibs/libgfortran.5.dylib already exists bug.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
OK, I found the issue.
libgfortran.5.dylib
was a direct dependency of the executables listed above, but also an indirect dependency vialibnetcdff.6.1.1.dylib
(which is not listed indelocate-listdeps
). The catch was that the direct dependency came from/usr/local/Cellar/gcc@8/8.3.0/lib/gcc/8/libgfortran.5.dylib
and the indirect one from/usr/local/Cellar/gcc@9/9.1.0/lib/gcc/9/libgfortran.5.dylib
. delocate then couldn’t handle the situation of different absolute paths with the same filename. I changed my build to use the same gfortran for everything which solved the issue.There are two things that should be improved I think:
delocate-listdeps
.PR #94 should have improved situations with indirect dependencies. Can you test your wheel with the latest version of delocate?
delocate-listdeps
also shows indirect dependencies since #118 was merged.