-
Notifications
You must be signed in to change notification settings - Fork 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
Error building ZMQ.jl v0.6.0 on CentOS 7 #176
Comments
same here, on CentOS 7 |
Sounds a lot like JuliaIO/Blosc.jl#50. Analogous to there, perhaps the error is fixed by |
@stevengj No.. it doesn't fix it. I'm installing ZMQ inside a docker container with a fresh Julia installation. Looks like something specific to CentOS 7. I had no trouble with macOS and Ubuntu. |
See my comment about verbose info: JuliaIO/Blosc.jl#50 (comment) |
Nothing... julia> ARGS
1-element Array{String,1}:
"--verbose"
julia> Pkg.build("ZMQ")
INFO: Building ZMQ
===================================================================================================[ ERROR: ZMQ ]===================================================================================================
LoadError: BinaryProvider.LibraryProduct("/usr/local/julia/share/julia/site/v0.6/ZMQ/deps/usr/lib", String["libzmq"], :libzmq, "Prefix(/usr/local/julia/share/julia/site/v0.6/ZMQ/deps/usr)") is not satisfied, cannot generate deps.jl!
while loading /usr/local/julia/share/julia/site/v0.6/ZMQ/deps/build.jl, in expression starting on line 40
====================================================================================================================================================================================================================
==================================================================================================[ BUILD ERRORS ]==================================================================================================
WARNING: ZMQ had build errors.
- packages with build errors remain installed in /usr/local/julia/share/julia/site/v0.6
- build the package(s) and all dependencies with `Pkg.build("ZMQ")`
- build a single package by running its `deps/build.jl` script |
I manually edited build.jl and got some output:
|
verbose argument is not passed to
|
What happens if you manually call dlopen on the libzmq.so in deps/usr? |
The problem seems to be that the "BinaryBuilder" binaries are not compatible with the "unofficial" CentOS julia package. If I use the generic linux binaries it works. |
smells like ABI madness |
I also ran into this problem. A manual
|
Would it be possible for ZMQBuilder to use an older GCC version, to provide more backward-compatibility? CentOS-7 will still be with us for a while ... |
That depends on the BinaryBuilder setup: filed JuliaPackaging/BinaryBuilder.jl#230 |
See also https://stackoverflow.com/questions/44205687/glibcxx-3-4-21-not-found-on-centos-7 — it looks like the library might be there on CentOS 7, but there is a problem with the paths. |
As commented in the BinaryBuilder thread, this problem arises if you build Julia from source with old libstdc++ library. A workaround would be to use the official Linux |
Sure - but of course, it's sometimes necessary to build Julia from source (enabling AVX-2, using Could we just have ZMQ.jl build the library from source if the default binary is not suitable for the current system? |
Yes, that would be possible. A PR would be welcome. |
Turns out that I need to override libstdc++ for the current Anaconda matplotlib anyhow, on CentOS-7. And that probably won't be the last thing that's usually supplied in binary form and needs a more recent one, so ... |
Same problem with my CentOS
The version from the yum repository has the same |
GR.jl has interesting code for detecting Redhat, on if Sys.KERNEL == :NT
os = :Windows
else
os = Sys.KERNEL
end
const arch = Sys.ARCH
if os == :Linux && arch == :x86_64
if isfile("/etc/redhat-release")
rel = String(read(pipeline(`cat /etc/redhat-release`, `sed s/.\*release\ //`, `sed s/\ .\*//`)))[1:end-1]
if rel > "7.0"
os = "Redhat"
end |
@nalimilan just so he's aware. |
Can someone on CentOS confirm that this is fixed in the latest master? Pkg.add("CMakeWrapper")
Pkg.checkout("ZMQ")
Pkg.build("ZMQ") |
Works great. |
Thanks, @stevengj! |
When building on CentOS 7:
If I revert to v0.5.1 using
Pkg.pin("ZMQ", v"0.5.1")
, thenPkg.build("ZMQ")
works fine.The text was updated successfully, but these errors were encountered: