Skip to content

Segfault with PackageCompiler and Unitful on Julia v1.5 (regression) #38719

@oschulz

Description

@oschulz

Using PackageCompiler with Unitful now crashes on Julia v1.5.3 but works on v1.3.1 and v1.4.2:

Using a "precompile_exec.jl"

using Unitful 

# PackageCompiler crashes here:
u"m"

and running

import PackageCompiler, Libdl

PackageCompiler.create_sysimage(
    [:Unitful],
    sysimage_path = "JuliaSysimage.so",
    precompile_execution_file = "precompile_exec.jl",
    cpu_target=PackageCompiler.default_app_cpu_target()
)

results in

signal (11): Segmentation fault
in expression starting at /[...]/precompile_exec.jl:4
jl_subtype_env at /buildworker/worker/package_linux64/build/src/subtype.c:1850
jl_isa at /buildworker/worker/package_linux64/build/src/subtype.c:2115
jl_static_show_x_ at /buildworker/worker/package_linux64/build/src/rtutils.c:1005
jl_static_show_x_ at /buildworker/worker/package_linux64/build/src/rtutils.c:1074
jl_static_show_x_ at /buildworker/worker/package_linux64/build/src/rtutils.c:1074
jl_static_show_next_ at /buildworker/worker/package_linux64/build/src/rtutils.c:1154
jl_static_show_next_ at /buildworker/worker/package_linux64/build/src/rtutils.c:751 [inlined]
jl_static_show_x at /buildworker/worker/package_linux64/build/src/rtutils.c:1099 [inlined]

on Julia v1.5 (Linux x64_64). On Julia v1.3.1 and v1.4.2, this runs fine and produces a functional system image.

Tested using PackageCompiler v1.2.3 and Unitful v1.5.0 (no other packages in environment).

System info:

julia> versioninfo()
Julia Version 1.5.3
Commit 788b2c77c1 (2020-11-09 13:37 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions