Help to use `JuliaC` on Centos7

Hi everyone,

I’m trying to compile a julia script (just a simple helloworld, like in the JuliaC repo) using JuliaC on a Centos7 machine. I know Centos7 is EOL, but this is a constraint for an old HPC cluster.

As far as I know, the main constraint with Centos7 is the GLIBC version : 2.17.

What I’ve tried so far (using Docker images):

  • centos:7 + download julia 1.12.4 + app add JuliaC + juliac (...)
  • centos7-gcc13 + git clone julia (v1.12.4) + compile (USE_BINARYBUILDER=1) + app add JuliaC + juliac (...)
  • centos7-gcc13 + git clone julia (v1.12.4) + compile (USE_BINARYBUILDER=0) + app add JuliaC + juliac (...)

juliac manages to compile an executable, but when I try to run this executable, the following error is raised:

error: runtime auto-initialization failed due to bad sysimage lookup
       (this should not happen, please file a bug report)

Do you have any clue on how to solve this? Is it even possible (with the constraint GLIBC = 2.17)?

Thank you!

Probably best to file bug report like the error message suggests: GitHub · Where software is built

I’ve hesitated (like always) between an issue on repo or a message here, thinking that it was may be a dumb error. I’ve followed your advice and just posted an issue : Using `JuliaC` on Centos7 · Issue #105 · JuliaLang/JuliaC.jl · GitHub.

Atlernatively you could just run JuliaC on your local PC and then move the artifacts onto the HPC cluster.

I am afraid I can’t do that : on my local PC the binary will be “bind” (sorry for the vocabulary, I’m not an expert at all) with GLIBC_2.34, which does not exist on centos:7. I just did the test : I compiled a (working) helloworld on ubuntu:latest, moved it to centos:7 and obtained

/compiled/bin/app_test_exe: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by /compiled/bin/app_test_exe)