JuliaLang / PackageCompiler.jl

Compile your Julia Package
https://julialang.github.io/PackageCompiler.jl/dev/
MIT License
1.41k stars 189 forks source link

Fix CI failures on macOS #955

Open ufechner7 opened 1 month ago

ufechner7 commented 1 month ago

For example this one: https://github.com/JuliaLang/PackageCompiler.jl/actions/runs/10157131523/job/28086727730 and this one: https://github.com/JuliaLang/PackageCompiler.jl/actions/runs/10157131523/job/28086727940

$(get_julia_cmd()) --sysimage=$sysimage -e 'using Pkg; Pkg.precompile()'

probably has a non-zero return value when run, but without access to a macOS Julia installation that is indeed hard to impossible to debug.

ufechner7 commented 1 month ago

The first error message:

Testing Running tests...
  Installing known registries into `/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_nHjCP8`
    Updating registry at `/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_nHjCP8/registries/General.toml`
   Resolving package versions...
   Installed Example ─ v0.5.3
    Updating `/private/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_9ryC3x/Project.toml`
  [7876af07] + Example v0.5.3
    Updating `/private/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_9ryC3x/Manifest.toml`
  [7876af07] + Example v0.5.3
Precompiling project...
  1 dependency successfully precompiled in 1 seconds
┌ Debug: instantiating project at "/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_9ryC3x"
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:570
┌ Debug: ensurecompiled: running `/Users/pkrysl/julia-1.10.4/bin/julia --color=yes --startup-file=no --pkgimages=no --sysimage=/Users/pkrysl/julia-1.10.4/lib/julia/sys.dylib -e 'using Pkg; Pkg.precompile()'`
│   JULIA_LOAD_PATH = "/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_9ryC3x:@stdlib"
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:290
Precompiling project...
  1 dependency successfully precompiled in 1 seconds
┌ Debug: running precompilation execution script...
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:341
┌ Debug: run_precompilation_script: running `/Users/pkrysl/julia-1.10.4/bin/julia --color=yes --startup-file=no --pkgimages=no --sysimage=/Users/pkrysl/julia-1.10.4/lib/julia/sys.dylib --compile=all --trace-compile=/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_packagecompiler_aHT31M/jl_lw0q26 /Users/pkrysl/.julia/packages/PackageCompiler/nT5sD/test/precompile_execution.jl`
│   JULIA_LOAD_PATH = "/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_9ryC3x:@stdlib"
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:303
[ Info: PackageCompiler: Executing /Users/pkrysl/.julia/packages/PackageCompiler/nT5sD/test/precompile_execution.jl => /var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_packagecompiler_aHT31M/jl_lw0q26
[ Info: PackageCompiler: Done
┌ Debug: writing precompile staging code to /var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_XWdgrG7WTW
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:458
┌ Debug: running `/Users/pkrysl/julia-1.10.4/bin/julia --color=yes --startup-file=no --pkgimages=no --cpu-target=native -O1 --sysimage=/Users/pkrysl/julia-1.10.4/lib/julia/sys.dylib --project=/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_9ryC3x --output-o=/var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_xSPwdAf8ha.o /var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_XWdgrG7WTW`
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:465
✔ [00m:21s] PackageCompiler: compiling incremental system image
┌ Debug: running `g++ -march=armv8-a+crypto+simd -shared -L/Users/pkrysl/julia-1.10.4/lib -L/Users/pkrysl/julia-1.10.4/lib/julia -o /var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_70vUHP/sys.dylib -Wl,-all_load /var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_xSPwdAf8ha.o -ljulia -ljulia-internal -fPIC -Wl,-rpath,@executable_path -Wl,-rpath,@executable_path/julia`
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:199
┌ Debug: running `install_name_tool -id @rpath/sys.dylib sys.dylib`
└ @ PackageCompiler ~/.julia/packages/PackageCompiler/nT5sD/src/PackageCompiler.jl:670
ERROR: System image file failed consistency check: maybe opened the wrong version?
create_sysimage: Error During Test at /Users/pkrysl/.julia/packages/PackageCompiler/nT5sD/test/runtests.jl:37
  Got exception outside of a @test
  failed process: Process(`/Users/pkrysl/julia-1.10.4/bin/julia -C native -J/Users/pkrysl/julia-1.10.4/lib/julia/sys.dylib --depwarn=yes --check-bounds=yes -g1 --color=yes --startup-file=no -J /var/folders/c9/p2llxmtj2cn82kp_6f75_gqr0000gn/T/jl_70vUHP/sys.dylib -e 'println(Example.hello("foo")); script_func(); print_opt()'`, ProcessExited(1)) [1]

  Stacktrace:
    [1] pipeline_error
      @ ./process.jl:565 [inlined]
    [2] read(cmd::Cmd)
      @ Base ./process.jl:449
    [3] read(cmd::Cmd, ::Type{String})
      @ Base ./process.jl:458
    [4] macro expansion
      @ ~/.julia/packages/PackageCompiler/nT5sD/test/runtests.jl:64 [inlined]
    [5] macro expansion
      @ ~/julia-1.10.4/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
    [6] macro expansion
      @ ~/.julia/packages/PackageCompiler/nT5sD/test/runtests.jl:38 [inlined]
    [7] macro expansion
      @ ~/julia-1.10.4/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
    [8] top-level scope
      @ ~/.julia/packages/PackageCompiler/nT5sD/test/runtests.jl:37
    [9] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [10] top-level scope
      @ none:6
   [11] eval
      @ ./boot.jl:385 [inlined]
   [12] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:291
   [13] _start()
      @ Base ./client.jl:552

Any idea?

ufechner7 commented 1 month ago

Related: https://github.com/JuliaLang/PackageCompiler.jl/issues/738

Possible fix: https://github.com/JuliaLang/PackageCompiler.jl/pull/935

ufechner7 commented 1 month ago

This pull request will help to get rid of the false positives: https://github.com/JuliaLang/PackageCompiler.jl/pull/956