JuliaLang / MbedTLS.jl

Wrapper around mbedtls
Other
41 stars 50 forks source link

Init error when running relocatable app #242

Closed Felix-Gauthier closed 2 years ago

Felix-Gauthier commented 2 years ago

Hey there, I've noticed the latest version of MbedTLS.jl seems to break creating an app through PackageCompiler

I think

https://github.com/JuliaLang/MbedTLS.jl/blob/0c02e44ed96bf09ce3b9fb649db5914f629c2812/src/ssl.jl#L784-L785

from #238 is the cause

MWA ```julia name = "Foo" using Pkg Pkg.generate(name) Pkg.activate(name) Pkg.add("MbedTLS") # latest -> v1.1.0 using PackageCompiler # PackageCompiler v2.0.7 create_app(name, "./$(name)Compiled"; force=true) # Error: run(`./$(name)Compiled/bin/Foo`) fatal: error thrown and no exception handler available. InitError(mod=:MbedTLS, error=Base.SystemError(prefix="opening file "<...>FooCompiled/share/julia/cert.pem"", errnum=2, extrainfo=nothing)) #systemerror#69 at ./error.jl:174 systemerror##kw at ./error.jl:174 systemerror##kw at ./error.jl:174 #systemerror#68 at ./error.jl:173 [inlined] systemerror at ./error.jl:173 [inlined] #open#636 at ./iostream.jl:293 open at ./iostream.jl:282 [inlined] #open#355 at ./io.jl:328 open at ./io.jl:328 [inlined] read at ./io.jl:436 _jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined] jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429 __sslinit__ at <...>.julia/packages/MbedTLS/qUI5E/src/ssl.jl:785 __init__ at <...>.julia/packages/MbedTLS/qUI5E/src/MbedTLS.jl:55 jfptr___init___16180.clone_1 at <...>FooCompiled/lib/julia/sys.so (unknown line) _jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined] jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429 jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined] jl_module_run_initializer at /buildworker/worker/package_linux64/build/src/toplevel.c:73 _finish_julia_init at /buildworker/worker/package_linux64/build/src/init.c:796 julia_init at /buildworker/worker/package_linux64/build/src/init.c:730 jl_init_with_image at /buildworker/worker/package_linux64/build/src/jlapi.c:74 jl_init at /buildworker/worker/package_linux64/build/src/jlapi.c:90 main at ./FooCompiled/bin/Foo (unknown line) __libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) _start at ./FooCompiled/bin/Foo (unknown line) ERROR: failed process: Process(`./FooCompiled/bin/Foo`, ProcessExited(1)) [1] ```

Initialization looks for the certificate at the wrong place, but I don't know enough about the artifact system / PackageCompiler to open a PR with what I assume should be a quick fix ? Sorry.

Felix-Gauthier commented 2 years ago

Seems to have been resolved in https://github.com/JuliaLang/PackageCompiler.jl/releases/tag/v2.0.8 , Closing.