-
Notifications
You must be signed in to change notification settings - Fork 0
Use development toolchain of Swift #58
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
9b0cb5b to
2a4c193
Compare
|
Engaging with the idea of not intercepting the GNU linker of the toolchain, as that appears to not be the actual issue. The problem is, ultimately, SwiftPM, which is not using the version of Swift set in the comment of the On 0b45a9d, the workflow fails with even though dswtc is specified to What if we sym link |
|
As an indication of SwiftPM using the Xcode-bundled Swift toolchain, both xcrun --show-toolchain-path --toolchain "$(dswtcinfo id)"and xcrun --toolchain "$(dswtcinfo id)" --show-toolchain-pathyield Does SwiftPM execute |
|
Bingo. In SwiftPM…
Assuming that this is, in fact, an issue of |
|
WHAT |
|
🕺🏽🕺🏽🕺🏽 |
|
Update: the fix consists of merely sym-linking the |
(This was tried in #44, but turned out to be an unsuccessful attempt.)
Differentiation is required for implementing fields (#40), but the automatic differentiation framework of Swift is available only in development versions of the toolchain. Ideally, configuration of the GitHub workflow would be as straightforward as
xcodebuildandswift run,but, as of the present date, development toolchains do not include the GNU linker (
ld), which is necessary for compiling Swift sources. This means that only following the above steps would result in the workflow failing.The solution, which I caringly deem a workaround, is to simply1 create a symlink to the
ldof the Xcode-bundled toolchain in the toolchain used by Deus. This can be done manually, but may be easier to just execute theconfigurescript at the root of the project. Similarly, there is adeconfigureone which undoes all changes made byconfigure.Footnotes
Not so simple (for me), though. Notice the amount of commits and numerous failed attempts. ↩