From 2f81ec6035cd966bbc57a36cc0b8d629eaacf5db Mon Sep 17 00:00:00 2001 From: qwjyh Date: Tue, 29 Apr 2025 16:28:34 +0900 Subject: [PATCH] fix: sysimage for julials --- bin/neovim/add_dependencies.jl | 10 ++++------ bin/neovim/update_julials.jl | 2 +- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/bin/neovim/add_dependencies.jl b/bin/neovim/add_dependencies.jl index 46c7d44..b3e39fa 100644 --- a/bin/neovim/add_dependencies.jl +++ b/bin/neovim/add_dependencies.jl @@ -11,12 +11,12 @@ Pkg.add("PackageCompiler") # add extra dependencies # these packages are manually collected -pkg_extra = ["Logging", "Sockets", "DataStructures", "Tar", "ArgTools", "Dates", "Downloads", "TOML", "JSONRPC", "SymbolServer"] +pkg_extra = ["Logging", "Sockets", "DataStructures", "Tar", "ArgTools", "Dates", "Downloads", "TOML", "JSONRPC", "SymbolServer", "CSTParser", "StaticLint", "JSON"] Pkg.add(pkg_extra) @info "added dependencies" # Extra package to be executed in precompiled code -pkg_precompiled = [] +pkg_precompiled = ["Pkg"] # save pkgs to be used for precompile functions with traced script out_path = joinpath(Pkg.project().path |> dirname, "precompile_exec_head.jl") @@ -24,10 +24,8 @@ out_path = joinpath(Pkg.project().path |> dirname, "precompile_exec_head.jl") open(out_path, "w") do io println(io, "using LanguageServer") println(io, "using " * join(pkg_extra, ", ")) - # println(io, "using " * join(pkg_precompiled, ", ")) - if Sys.iswindows() - println(io, "import FileWatching") - end + println(io, "using " * join(pkg_precompiled, ", ")) + println(io, "import FileWatching") end @info "finished writing precompile head file" diff --git a/bin/neovim/update_julials.jl b/bin/neovim/update_julials.jl index 082a2b9..77c157e 100644 --- a/bin/neovim/update_julials.jl +++ b/bin/neovim/update_julials.jl @@ -12,7 +12,7 @@ cd(project_path) do end |> join read("precompile_exec_head.jl", String) * compile_traces |> (b -> write("precompile_exec.jl", b)) @info "compiling sysimage..." - create_sysimage(["LanguageServer"], sysimage_path = "sys-ls.so", precompile_execution_file = ["precompile_exec.jl"])' + create_sysimage(["LanguageServer"], sysimage_path = "sys-ls.so", precompile_execution_file = ["precompile_exec.jl"]) @info "post precompile" run(`julia --project=. -J sys-ls.so -e 'using Pkg; Pkg.precompile()'`) end