-
Notifications
You must be signed in to change notification settings - Fork 644
[julia]: Update build script to be compatible with new BB #314
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
Not sure about the placement of `preferred_gcc_version`. It's not documented, so I guessed after looking at the source.
| Linux(:i686; libc=:glibc), | ||
| Windows(:x86_64;), | ||
| Windows(:i686;), | ||
| ] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not platforms = supported_platforms()?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't build Julia for all the supported platforms upstream (such as musl).
|
The problem seems to be that Julia cannot dlopen another version of libjulia in https://github.com/JuliaPackaging/BinaryBuilder.jl/blob/a8132866f9072508265d79f98d735885dd75b5b7/src/Auditor.jl#L114 |
|
Unfortunately, Julia cannot be cross-compiled, because the bootstrap portion of the build doesn't support cross-compilation. It is possible to do it with WINE, but we don't have that setup in BB yet. :( |
|
Can we make BB serve the regular Julia binaries (without trying to compile them)? |
|
Yes, I think we can do what HDF5_jll did here as a temporary workaround. |
|
I like the idea of just serving the regular Julia binaries. I understand how to download the tarballs for Linux and FreeBSD and extract them into the right dir. |
|
I think 7zip should be able to unpack a dmg |
|
I believe the right thing to do here is to make the Julia buildbots upload tarballs for all platforms. In the meanwhile I do believe you can find Linux tools to extract files from Windows installer executables. Maybe 7zip. |
|
One important aspect of this is that it would have to package the includes. Am I right, @barche? |
|
@ViralBShah I second the idea of using the official binaries, but extracting the official binaries on Linux failed for me for mac and/or Windows when I tried it (around the release of Julia 1.0, I think I tried with 7z). @jstrube Yes, the includes are needed, but they are there in the official distribution and should also be in the jll tarball? |
|
I wonder what the CI systems do on mac and windows to get the official Julia binaries. Perhaps we can do something similar. |
They have native systems, we don't |
I thought there may be some intermediate tarballs from the buildbots that they might be using. But that is not the case - https://github.com/JuliaCI/install-julia/blob/master/install-julia.sh |
|
It looks like our
Viral is probably right in that the best thing for us to do is to generate tarballs on the buildbots. |
|
I don't understand where this build error comes from: "can't dlopen library" https://dev.azure.com/JuliaPackaging/Yggdrasil/_build/results?buildId=1283&view=logs&j=ed5bc0cf-9e11-56fd-407f-0f551f71f6db&t=afded763-3b68-5ccd-6b86-d980edfd7e43&l=1893 |
|
Ok, who can help with making this happen? |
The problem is not that it's hard or much work, but to repackage the official Julia release as a JLL, we need .tar.gz files for all platforms, and MacOS and Windows are missing (available as dmg and .exe instead). So it needs intervention from someone who can make the official binary build system generate these. Ideally, they should also use a naming scheme compatible with the |
|
@staticfloat Do you know who in the JuliaCI / buildbot area can help upload tarballs of these binaries going forward? For now, should we just do it manually? |
|
We've made some progress on |
|
Perhaps @DilumAluthge can help? |
|
Superseded by #1048 |
|
It would perhaps be better to start using these in CI and such. @DilumAluthge |
|
@staticfloat Do these get uploaded automatically when we build a new release? Not seeing 1.4.2. |
|
No, someone has to update the builder in Yggdrasil and push a build through. |
|
I meant the upstream ArchiveSources - those are the ones that are failing. |
|
Opened #1084 to figure out how to get Julia 1.4.2 in. |
Not sure about the placement of
preferred_gcc_version. It's not documented, so I guessed after looking at the source.