Error when using a PackageCompiler sys image in a different container

Hi,

I’m getting the following error when trying to use a system image in a Python 3.8 container (with Julia installed). The system image was built using the Julia 1.4.1 docker image, using PackageCompiler ( incremental=true, cpu_target="x86_46" ).

fatal: error thrown and no exception handler available.
#<null>
jl_errorf at /buildworker/worker/package_linux64/build/src/rtutils.c:77
jl_load_dynamic_library at /buildworker/worker/package_linux64/build/src/dlload.c:233
#dlopen#3 at /usr/local/julia/share/julia/stdlib/v1.4/Libdl/src/Libdl.jl:109
dlopen at /usr/local/julia/share/julia/stdlib/v1.4/Libdl/src/Libdl.jl:109 [inlined]
__init__ at /root/.julia/packages/PyCall/zqDXB/src/pyinit.jl:149
jfptr___init___10487 at /docker/CustomSysimage.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2144 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2322
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1700 [inlined]
jl_module_run_initializer at /buildworker/worker/package_linux64/build/src/toplevel.c:74
_julia_init at /buildworker/worker/package_linux64/build/src/init.c:788
main at /buildworker/worker/package_linux64/build/ui/repl.c:211
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
_start at /usr/local/bin/julia (unknown line)

The /buildworker/ directory doesn’t seem to exist.

System information:

Linux dedf9318389d 4.19.76-linuxkit #1 SMP Thu Oct 17 19:31:58 UTC 2019 x86_64 GNU/Linux

Any help would be appreciated.

I ca see that the error happens in the __init__ function in PyCall:

1 Like

Thanks for getting back to me.

I tested building the package using the Python 3.8 image with a manual installation of Julia and that didn’t have the same problem. Do you know why there is difference between the use of the two images?

I’m guessing this isn’t really a question about PackageCompiler now, more a difference between the containers.