JuliaLang / PackageCompiler.jl

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

julia1.9.0 sysimage Failed to precompile PackageCompiler #815

Closed 13299118606 closed 1 year ago

13299118606 commented 1 year ago
versioninfo()
Commit 8e63055292 (2023-05-07 11:25 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: 20 × 12th Gen Intel(R) Core(TM) i7-12700
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-14.0.6 (ORCJIT, alderlake)
  Threads: 1 on 20 virtual cores

I tested PackageCompiler package versions @2.1.4 -2.1.6, Start julia directly without sysimage, I use the command:


using PackageCompiler
pkgs = [:DataFrames,:CSV,:SignalAnalysis,:MAT,:OhMyREPL,:AbstractTrees,:Revise,:OhMyREPL,:Infiltrator,:StatProfilerHTML,:GLMakie]

 create_sysimage(pkgs,sysimage_path="E:\\MyJuliaSysimage.dll"
          )

start up julia --sysimage=E:/MyJuliaSysimage.dll Then use the command


using PackageCompiler

An error will appear:

[ Info: Precompiling PackageCompiler [9b87118b-4619-50d2-8e1e-99f35a4d4d9d]
ERROR: Unable to find compatible target in system image.
ERROR: Failed to precompile PackageCompiler [9b87118b-4619-50d2-8e1e-99f35a4d4d9d] to "C:\\Users\\Administrator\\.julia\\compiled\\v1.9\\PackageCompiler\\jl_CE96.tmp".
Stacktrace:
 [1] error(s::String)
   @ Base .\error.jl:35
 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
   @ Base .\loading.jl:2260
 [3] compilecache
   @ .\loading.jl:2127 [inlined]
 [4] _require(pkg::Base.PkgId, env::String)
   @ Base .\loading.jl:1770
 [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
   @ Base .\loading.jl:1625
 [6] macro expansion
   @ .\loading.jl:1613 [inlined]
 [7] macro expansion
   @ .\lock.jl:267 [inlined]
 [8] require(into::Module, mod::Symbol)
   @ Base .\loading.jl:1576
 [9] top-level scope
   @ C:\Users\Administrator\.julia\packages\Infiltrator\r3Hf5\src\Infiltrator.jl:710

I tried removing the compile file C:\Users\Administrator.julia\compiled\v1.9\PackageCompiler

Go through the process again

using PackageCompiler

when enabling sysimage and the same error occurred.

Did I make a mistake? Why did the julila1.7.3 I met before not have this problem?

13299118606 commented 1 year ago

It is caused by the environment variable JULIA_CPU_TARGET=generic set by myself