-
Notifications
You must be signed in to change notification settings - Fork 1.4k
bootstrap: add an LC_RPATH
relative to the executable
#2548
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This adds the executable relative path to the runtime path selection to ensure that we use local copies of the libraries to run executables. Without this, the system libraries would be used which may not have changes that the tool was built against.
@swift-ci please test |
Is this for tensor flow? The libs on system are supposed to be ABI stable so we shouldn't need to pick the latest ones. |
Yes, TensorFlow definitely needs this. I think that in general though, this is desirable: if Im experimenting with changes to swiftCore, I should be able to use that version. |
I think we can also support experimentation using other ways but this also seems fine. |
@swift-ci smoke test |
@swift-ci please smoke test |
…arwin. Add `@executable_path/../lib/swift/<platform>` RPATH on Darwin platforms. This is necessary for experimental toolchains that include libraries not part of the OS (e.g. `PythonKit` or `TensorFlow`). Verified to fix SwiftPM command linker issues for Swift for TensorFlow toolchains: tensorflow/swift#347. Effectively reverts swiftlang#2548: an unverified fix for the same issue that did not work.
Add `@executable_path/../lib/swift/<platform>` RPATH on Darwin platforms. This is necessary for experimental toolchains that include libraries not part of the OS (e.g. `PythonKit` or `TensorFlow`). Verified to fix SwiftPM command linker issues for Swift for TensorFlow toolchains: tensorflow/swift#347. Effectively reverts swiftlang#2548: an unverified fix for the same issue that did not work.
Add `@executable_path/../lib/swift/<platform>` RPATH on Darwin platforms. This is necessary for experimental toolchains that include libraries not part of the OS (e.g. `PythonKit` or `TensorFlow`). Verified to fix SwiftPM command linker issues for Swift for TensorFlow toolchains: tensorflow/swift#347. Effectively reverts swiftlang#2548: an unverified fix for the same issue that did not work.
This adds the executable relative path to the runtime path selection to
ensure that we use local copies of the libraries to run executables.
Without this, the system libraries would be used which may not have
changes that the tool was built against.