ERROR: System image file failed consistency check: maybe opened the wrong version?

julia 0.7 on Linux x64

$ cd julia-0.7.0-linux-x86_64/share/julia
$ julia build_sysimg.jl --force

After the build I cannot run julia:

$ julia
ERROR: System image file failed consistency check: maybe opened the wrong version?
$ ldd ../../lib/julia/sys.so 
	statically linked

This is the console output of the build with many duplicate warnings truncated:

$ cd julia-0.7.0-linux-x86_64/share/julia
$ julia build_sysimg.jl --force
WARNING: Base.Libdl is deprecated, run `using Libdl` instead
  likely near /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:187
...
in #build_sysimg#3 at /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl
WARNING: Base.Libdl is deprecated, run `using Libdl` instead
  likely near /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:187
in #4 at /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl
WARNING: Base.Libdl is deprecated, run `using Libdl` instead
  likely near /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:187
in #4 at /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = (::getfield(Main, Symbol("##4#5")){Bool,String,String})() at build_sysimg.jl:74
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:74
INFO: Building basecompiler.o
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = (::getfield(Main, Symbol("##4#5")){Bool,String,String})() at build_sysimg.jl:75
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:75
INFO: /mnt/swhome/data/julia-0.7.0-linux-x86_64/bin/julia -C native --output-ji /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/basecompiler.ji --output-o /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/basecompiler.o compiler/compiler.jl
essentials.jl
some.jl
ctypes.jl
generator.jl
reflection.jl
options.jl
promotion.jl
tuple.jl
pair.jl
traits.jl
range.jl
expr.jl
error.jl
bool.jl
number.jl
int.jl
operators.jl
pointer.jl
refvalue.jl
indices.jl
array.jl
abstractarray.jl
bitarray.jl
bitset.jl
abstractdict.jl
abstractset.jl
iterators.jl
namedtuple.jl
docs/core.jl
ordering.jl
sort.jl
compiler/utilities.jl
compiler/validation.jl
compiler/inferenceresult.jl
compiler/params.jl
compiler/inferencestate.jl
compiler/typeutils.jl
compiler/typelimits.jl
compiler/typelattice.jl
compiler/tfuncs.jl
compiler/abstractinterpretation.jl
compiler/typeinfer.jl
compiler/optimize.jl
compiler/ssair/driver.jl
compiler/ssair/ir.jl
compiler/ssair/domtree.jl
compiler/ssair/slot2ssa.jl
compiler/ssair/queries.jl
compiler/ssair/passes.jl
compiler/ssair/inlining.jl
compiler/ssair/verify.jl
compiler/ssair/legacy.jl
compiler/bootstrap.jl
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = (::getfield(Main, Symbol("##4#5")){Bool,String,String})() at build_sysimg.jl:79
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:79
INFO: Building sys.o
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = (::getfield(Main, Symbol("##4#5")){Bool,String,String})() at build_sysimg.jl:80
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:80
INFO: /mnt/swhome/data/julia-0.7.0-linux-x86_64/bin/julia -C native --output-ji /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/sys.ji --output-o /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/sys.o -J /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/basecompiler.ji --startup-file=no sysimg.jl
coreio.jl
exports.jl
essentials.jl
ctypes.jl
gcutils.jl
generator.jl
reflection.jl
options.jl
promotion.jl
tuple.jl
pair.jl
traits.jl
range.jl
expr.jl
error.jl
bool.jl
number.jl
int.jl
operators.jl
pointer.jl
refvalue.jl
refpointer.jl
checked.jl
indices.jl
array.jl
abstractarray.jl
subarray.jl
views.jl
abstractdict.jl
iterators.jl
namedtuple.jl
hashing.jl
rounding.jl
float.jl
twiceprecision.jl
complex.jl
rational.jl
multinverses.jl
abstractarraymath.jl
arraymath.jl
simdloop.jl
reduce.jl
reshapedarray.jl
reinterpretarray.jl
bitarray.jl
bitset.jl
some.jl
dict.jl
abstractset.jl
set.jl
char.jl
strings/basic.jl
strings/string.jl
strings/substring.jl
build_h.jl
version_git.jl
osutils.jl
c.jl
io.jl
iostream.jl
iobuffer.jl
intfuncs.jl
strings/strings.jl
strings/search.jl
strings/unicode.jl
strings/util.jl
strings/io.jl
parse.jl
shell.jl
regex.jl
pcre.jl
show.jl
arrayshow.jl
cartesian.jl
multidimensional.jl
permuteddimsarray.jl
broadcast.jl
missing.jl
version.jl
sysinfo.jl
libc.jl
env.jl
libuv.jl
uv_constants.jl
event.jl
task.jl
lock.jl
threads.jl
weakkeydict.jl
logging.jl
stream.jl
filesystem.jl
process.jl
grisu/grisu.jl
methodshow.jl
secretbuffer.jl
floatfuncs.jl
math.jl
reducedim.jl
accumulate.jl
ordering.jl
sort.jl
fastmath.jl
gmp.jl
mpfr.jl
combinatorics.jl
hashing2.jl
irrationals.jl
mathconstants.jl
printf.jl
meta.jl
Enums.jl
channels.jl
deepcopy.jl
download.jl
summarysize.jl
errorshow.jl
stacktraces.jl
initdefs.jl
threadcall.jl
uuid.jl
loading.jl
util.jl
asyncmap.jl
multimedia.jl
deprecated.jl
docs/basedocs.jl
client.jl
docs/Docs.jl
Base  ─────────── 37.297694 seconds
Base64  ─────────  5.554014 seconds
CRC32c  ─────────  0.040211 seconds
SHA  ────────────  0.270101 seconds
FileWatching  ───  0.139899 seconds
Unicode  ────────  0.016015 seconds
Mmap  ───────────  0.109157 seconds
Serialization  ──  1.472476 seconds
Libdl  ──────────  0.038319 seconds
Markdown  ───────  1.641616 seconds
LibGit2  ────────  6.317308 seconds
Logging  ────────  0.905778 seconds
Sockets  ────────  2.612510 seconds
Printf  ─────────  0.011230 seconds
Profile  ────────  0.293508 seconds
Dates  ──────────  2.650586 seconds
DelimitedFiles  ─  0.282987 seconds
Random  ─────────  0.976168 seconds
UUIDs  ──────────  0.013045 seconds
Future  ─────────  0.009748 seconds
OldPkg  ─────────  1.319211 seconds
LinearAlgebra  ── 21.318180 seconds
SparseArrays  ───  5.695416 seconds
SuiteSparse  ────  1.689799 seconds
Distributed  ────  7.621112 seconds
SharedArrays  ───  0.260631 seconds
Pkg  ──────────── 37.785215 seconds
Test  ───────────  1.197791 seconds
REPL  ───────────  1.665472 seconds
Statistics  ─────  0.614755 seconds
Stdlibs total  ──102.712692 seconds
Sysimage built. Summary:
Total ─────── 140.013315 seconds 
Base: ───────  37.297694 seconds 26.6387%
Stdlibs: ──── 102.712692 seconds 73.3592%
WARNING: Base.Libdl is deprecated, run `using Libdl` instead
  likely near /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:187
WARNING: Base.Libdl is deprecated, run `using Libdl` instead
...
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = link_sysimg(::String, ::String, ::Bool) at build_sysimg.jl:168
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:168
INFO: Linking sys.so
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = link_sysimg(::String, ::String, ::Bool) at build_sysimg.jl:169
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:169
INFO: cc -L/mnt/swhome/data/julia-0.7.0-linux-x86_64/bin/../lib -shared -ljulia -o /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/sys.so /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/sys.o
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = link_sysimg(::String, ::String, ::Bool) at build_sysimg.jl:179
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:179
INFO: System image successfully built at /mnt/swhome/data/julia-0.7.0-linux-x86_64/lib/julia/sys.so
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = (::getfield(Main, Symbol("##4#5")){Bool,String,String})() at build_sysimg.jl:98
└ @ Main /mnt/swhome/data/julia-0.7.0-linux-x86_64/share/julia/build_sysimg.jl:98
INFO: Julia will automatically load this system image at next startup.

Anyone else experiencing this? Is there a fix? For now I have reinstalled the original image file.

Thank you.

A PR to fix this has been in limbo for a while. A workaround is described in this issue on Github.

1 Like