Compilation PackageCompile Julia系统映像与本地代码
了解JuliaCompilation PackageCompile Julia系统映像与本地代码,compilation,julia,packagecompiler.jl,Compilation,Julia,Packagecompiler.jl,了解JuliaPackageCompiler 我正在构建这样的系统映像 python3 -m julia.sysimage --script="pc.jl" foo.dylib 我的预编译脚本(pc.jl)包含以下内容 module Foo bah() = "bah" end 如果我在REPL中包含pc.jl,它将按预期工作 julia> include("pc.jl") Main.Foo julia> Main.Foo.bah() "bah" 但是如果我从我的系统映像开始Ju
PackageCompiler
我正在构建这样的系统映像
python3 -m julia.sysimage --script="pc.jl" foo.dylib
我的预编译脚本(pc.jl)包含以下内容
module Foo
bah() = "bah"
end
如果我在REPL中包含pc.jl,它将按预期工作
julia> include("pc.jl")
Main.Foo
julia> Main.Foo.bah()
"bah"
但是如果我从我的系统映像开始Julia,Foo就找不到了
$ julia --sysimage=foo.dylib _
...
julia> Main.Foo
ERROR: UndefVarError: Foo not defined
julia> Foo
ERROR: UndefVarError: Foo not defined
PackageCompiler是否处理未作为包发布的代码?可以使用它预编译本地个人代码吗?我认为PackageCompiler将包含在匿名模块中的所有代码都放在匿名模块中,以明确防止从主模块访问它:
啊,这是有道理的。非常感谢。所以,我猜答案是PackageCompiler旨在编译包中的代码;-)