Kyle Benesch
Kyle Benesch
You can still make a PR for refactors needed by `repairwheel`, if necessary.
> I've already tackled the more complicated stuff in `repairwheel` by reimplementing `otool`, `install_name_tool`, and `codesign` in Python. Then you've already finished the hardest parts. Never mind my pessimism, it...
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.
I had to put them side-by-side to understand: ```py { 'i386': [('/opt/X11/lib/libSM.6.dylib', '7.0.0', '7.1.0'), ('/opt/X11/lib/libICE.6.dylib', '10.0.0', '10.0.0'), ('/usr/lib/libSystem.B.dylib', '1.0.0', '1252.50.4')], 'x86_64': [('/opt/X11/lib/libSM.6.dylib', '7.0.0', '7.1.0'), ('/opt/X11/lib/libICE.6.dylib', '10.0.0', '10.0.0'), ('/usr/lib/libSystem.B.dylib', '1.0.0', '1311.120.1')],...
There's no simple workaround. All functions calling `_check_ignore_archs` will need to become aware of which architectures they're working with by getting that info from their caller. This info will need...
> Thanks. I deleted my post, since I realized the problem might not be entirely in delocate. No, you were correct. This is an issue with Delocate. Specifically that Delocate...
`sysconfig.get_platform()` will return the architecture that the running Python installation was built for. Normally `universal2` is what people want, but you can ask [cibuildwheel](https://github.com/pypa/cibuildwheel) for alternative architectures. The platform version...
`/usr/lib/*.dylib` are often system libraries such as `/usr/lib/libstdc++.6.dylib` which are not supposed to be bundled with the wheel. Many checks are `path.startswith("/usr/lib")` to filter these libraries. Delocate mainly expects external...
> Any clue as to why these libraries might be output with "@rpath/" rather than "/usr/lib" by a compiler? If I remember correctly. Because the "install name" of `libswiftCore.dylib` is...
Delocate would be less confused if these libraries were installed in `/usr/local/lib` for example.