On my system (ArchLinux, my own build Julia 1.0) the package SpecialFunctions fails to build. The problem seems to be the creation of libopenspecfun.a and the relevant part of the build log is the following (note that /usr/lib/julia/libLLVM-6.0.so exists)
ar: /usr/lib/julia/libLLVM-6.0.so: version `LLVM_6.0' not found (required by /usr/bin/../bin/../lib/bfd-plugins/LLVMgold.so)
Is this behaviour related to something I did wrong in the build/installation process or is it an actual issue?
Thanks for the hint! However, I am still confused (I am not familiar with several technical details):
I deduce that the problem is ld not ar; I was mislead by ar: ...
ld tries to load julia LLVM copy instead of system one (on ArchLinux, at the time of writing, shipped with the package llvm-libs 6.0.1-4), why is that an issue?
How can I force the linker to load the right version of LLVM?
After some trial and error, I discovered that SpecialFunctions succeeds to build if I temporary uninstall llvm-libs. Is it possible that the problem is the other way around, that is, that Julia loads the system LLVM copy instead of its own?
Only if this also happens with the official binaries. Since you installed it yourself, putting in a place where it interferes with the linker is on you ;).