Hacker News new | past | comments | ask | show | jobs | submit login

Julia is missing from the Ubuntu 18.04 repos for some reason. 16.04 is stuck at v0.45.



Yeah, the Julia community for better or worse seems to have an attitude of “don’t get julia from a package manager, download a binary from our website or built it from source.” No doubt this has to do with the fact that releases happen quickly and it’s a giant pain in the ass to go and push binaries to all these package managers.


This is because LLVM has bugs (like all software) and Julia carries around patched versions of LLVM. Those fixes are being upstreamed over time, but it takes time. Julia is a very hardcore test suite for numerical libraries, so it happens to find things that only show up when numerical stability is pushed to the edge, and Julia Base will have some tests fail if you don't build with the patched LLVM. That said... a lot of users might not notice a difference. But if you want what is known to be the most correct, then you should use the patched one. However, Linux package managers require that you use their LLVM, which in some cases is the wrong version, and in all cases is not the patched one.


I didn’t know that the package managers require you to use Linux’s LLVM. That’s a shame.

Do all the major package managers do this or is it just apt? I have a relatively new version of Julia from pacman on Arch, I wonder if it has a patched LLVM or not...


> I didn’t know that the package managers require you to use Linux’s LLVM. That’s a shame.

They don't require you to use “Linux's LLVM” (which would not make any sense given that Linux and LLVM are two independent projects), they make you use the version of LLVM they are currently packaging.

> Do all the major package managers do this or is it just apt?

All the package managers will conceptually do that; however, how old is the considered LLVM will vary strongly depending on the packaging policy of your distribution.


And rust does the same, as they also need their own LLVM version.


We don't need it, we just prefer it. You can build with stock LLVM if you want. (And that's how distros treat Rust as well; they use their own version instead of ours.)


What about the bugs that required a patched LLVM?


You get the bugs. No way around that. We try to upstream as many of our patches as possible, but we’ll always be a bit farther ahead. It’s just the nature of things.


It is not only Julia problem. It is a problem for many packages, mostly because of the slowness of Debian, from which Ubuntu takes packages. Distributions like Arch, Void or Fedora are much better in that sense.




Registration is open for Startup School 2019. Classes start July 22nd.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: