# The app generated by \`PackageCompiler.jl\` throw the \`InitError\`?

**URL:** <https://discourse.julialang.org/t/the-app-generated-by-packagecompiler-jl-throw-the-initerror/99512>\
**Category:** General Usage\
**Tags:** package-compiler\
**Created:** [May 28, 2023, 12:46pm UTC](https://discourse.julialang.org/t/the-app-generated-by-packagecompiler-jl-throw-the-initerror/99512 "2023-05-28T12:46:20Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![fenyutanchan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fenyutanchan/32/24081_2.png) [@fenyutanchan](https://discourse.julialang.org/u/fenyutanchan)\
**Post date:** [May 28, 2023, 12:46pm UTC](https://discourse.julialang.org/t/the-app-generated-by-packagecompiler-jl-throw-the-initerror/99512/1 "2023-05-28T12:46:20Z")

</div>

First I made one app as

```julia
module App

using SymEngine

function julia_main()::Cint
    @vars x y
    println(expand((x + y)^2))

    return 0
end # function julia_main

end # module App

```

Then

```julia
using PackageCompiler
create_app("App/", "compiled")

```

Finally I got

```plaintext
compiled
|-- bin
| |-- App
| `-- julia
|-- lib
| |-- julia
| | |-- libLLVM-14jl.so
| | |-- libLLVM.so -> libLLVM-14jl.so
| | |-- libamd.so -> libamd.so.2.4.6
| | |-- libamd.so.2 -> libamd.so.2.4.6
| | |-- libamd.so.2.4.6
| | |-- libatomic.so -> libatomic.so.1.2.0
| | |-- libatomic.so.1 -> libatomic.so.1.2.0
| | |-- libatomic.so.1.2.0
| | |-- libblastrampoline.so -> libblastrampoline.so.5
| | |-- libblastrampoline.so.5
| | |-- libblastrampoline.so.5.4.0 -> libblastrampoline.so.5
| | |-- libbtf.so -> libbtf.so.1.2.6
| | |-- libbtf.so.1 -> libbtf.so.1.2.6
| | |-- libbtf.so.1.2.6
| | |-- libcamd.so -> libcamd.so.2.4.6
| | |-- libcamd.so.2 -> libcamd.so.2.4.6
| | |-- libcamd.so.2.4.6
| | |-- libccalltest.so
| | |-- libccalltest.so.debug
| | |-- libccolamd.so -> libccolamd.so.2.9.6
| | |-- libccolamd.so.2 -> libccolamd.so.2.9.6
| | |-- libccolamd.so.2.9.6
| | |-- libcholmod.so -> libcholmod.so.3.0.14
| | |-- libcholmod.so.3 -> libcholmod.so.3.0.14
| | |-- libcholmod.so.3.0.14
| | |-- libcolamd.so -> libcolamd.so.2.9.6
| | |-- libcolamd.so.2 -> libcolamd.so.2.9.6
| | |-- libcolamd.so.2.9.6
| | |-- libcurl.so -> libcurl.so.4.8.0
| | |-- libcurl.so.4 -> libcurl.so.4.8.0
| | |-- libcurl.so.4.8.0
| | |-- libdSFMT.so
| | |-- libgcc_s.so.1
| | |-- libgfortran.so -> libgfortran.so.5.0.0
| | |-- libgfortran.so.5 -> libgfortran.so.5.0.0
| | |-- libgfortran.so.5.0.0
| | |-- libgit2.so -> libgit2.so.1.5
| | |-- libgit2.so.1.5 -> libgit2.so.1.5.0
| | |-- libgit2.so.1.5.0
| | |-- libgmp.so -> libgmp.so.10.4.1
| | |-- libgmp.so.10 -> libgmp.so.10.4.1
| | |-- libgmp.so.10.4.1
| | |-- libgmpxx.so -> libgmpxx.so.4.6.1
| | |-- libgmpxx.so.4 -> libgmpxx.so.4.6.1
| | |-- libgmpxx.so.4.6.1
| | |-- libgomp.so -> libgomp.so.1.0.0
| | |-- libgomp.so.1 -> libgomp.so.1.0.0
| | |-- libgomp.so.1.0.0
| | |-- libjulia-codegen.so -> libjulia-codegen.so.1.9
| | |-- libjulia-codegen.so.1 -> libjulia-codegen.so.1.9
| | |-- libjulia-codegen.so.1.9
| | |-- libjulia-internal.so -> libjulia-internal.so.1.9
| | |-- libjulia-internal.so.1 -> libjulia-internal.so.1.9
| | |-- libjulia-internal.so.1.9
| | |-- libklu.so -> libklu.so.1.3.8
| | |-- libklu.so.1 -> libklu.so.1.3.8
| | |-- libklu.so.1.3.8
| | |-- libldl.so -> libldl.so.2.2.6
| | |-- libldl.so.2 -> libldl.so.2.2.6
| | |-- libldl.so.2.2.6
| | |-- libllvmcalltest.so
| | |-- libmbedcrypto.so -> libmbedcrypto.so.7
| | |-- libmbedcrypto.so.2.28.2
| | |-- libmbedcrypto.so.7 -> libmbedcrypto.so.2.28.2
| | |-- libmbedtls.so -> libmbedtls.so.14
| | |-- libmbedtls.so.14 -> libmbedtls.so.2.28.2
| | |-- libmbedtls.so.2.28.2
| | |-- libmbedx509.so -> libmbedx509.so.1
| | |-- libmbedx509.so.1 -> libmbedx509.so.2.28.2
| | |-- libmbedx509.so.2.28.2
| | |-- libmpfr.so -> libmpfr.so.6.1.1
| | |-- libmpfr.so.6 -> libmpfr.so.6.1.1
| | |-- libmpfr.so.6.1.1
| | |-- libnghttp2.so -> libnghttp2.so.14.22.0
| | |-- libnghttp2.so.14 -> libnghttp2.so.14.22.0
| | |-- libnghttp2.so.14.22.0
| | |-- libopenblas64_.0.3.21.so
| | |-- libopenblas64_.so -> libopenblas64_.0.3.21.so
| | |-- libopenblas64_.so.0 -> libopenblas64_.0.3.21.so
| | |-- libopenlibm.so -> libopenlibm.so.4.0
| | |-- libopenlibm.so.4 -> libopenlibm.so.4.0
| | |-- libopenlibm.so.4.0
| | |-- libpcre2-8.so -> libpcre2-8.so.0.11.2
| | |-- libpcre2-8.so.0 -> libpcre2-8.so.0.11.2
| | |-- libpcre2-8.so.0.11.2
| | |-- libquadmath.so -> libquadmath.so.0.0.0
| | |-- libquadmath.so.0 -> libquadmath.so.0.0.0
| | |-- libquadmath.so.0.0.0
| | |-- librbio.so -> librbio.so.2.2.6
| | |-- librbio.so.2 -> librbio.so.2.2.6
| | |-- librbio.so.2.2.6
| | |-- libspqr.so -> libspqr.so.2.0.9
| | |-- libspqr.so.2 -> libspqr.so.2.0.9
| | |-- libspqr.so.2.0.9
| | |-- libssh2.so -> libssh2.so.1
| | |-- libssh2.so.1 -> libssh2.so.1.0.1
| | |-- libssh2.so.1.0.1
| | |-- libssp.so -> libssp.so.0.0.0
| | |-- libssp.so.0 -> libssp.so.0.0.0
| | |-- libssp.so.0.0.0
| | |-- libstdc++.so -> libstdc++.so.6.0.30
| | |-- libstdc++.so.6 -> libstdc++.so.6.0.30
| | |-- libstdc++.so.6.0.30
| | |-- libsuitesparseconfig.so -> libsuitesparseconfig.so.5.10.1
| | |-- libsuitesparseconfig.so.5 -> libsuitesparseconfig.so.5.10.1
| | |-- libsuitesparseconfig.so.5.10.1
| | |-- libumfpack.so -> libumfpack.so.5.7.9
| | |-- libumfpack.so.5 -> libumfpack.so.5.7.9
| | |-- libumfpack.so.5.7.9
| | |-- libunwind.so -> libunwind.so.8.0.1
| | |-- libunwind.so.8 -> libunwind.so.8.0.1
| | |-- libunwind.so.8.0.1
| | |-- libuv.so -> libuv.so.2.0.0
| | |-- libuv.so.2 -> libuv.so.2.0.0
| | |-- libuv.so.2.0.0
| | |-- libz.so -> libz.so.1
| | |-- libz.so.1 -> libz.so.1.2.13
| | |-- libz.so.1.2.13
| | `-- sys.so
| |-- libjulia.so -> libjulia.so.1.9
| |-- libjulia.so.1 -> libjulia.so.1.9
| `-- libjulia.so.1.9
`-- share
    `-- julia
        |-- Project.toml
        |-- artifacts
        | |-- 576d0dbb8081c9f93f59183fdfa3855c5702e616
        | | |-- include
        | | | `-- mpc.h
        | | |-- lib
        | | | |-- libmpc.so -> libmpc.so.3.2.1
        | | | |-- libmpc.so.3 -> libmpc.so.3.2.1
        | | | `-- libmpc.so.3.2.1
        | | |-- logs
        | | | `-- MPC
        | | | |-- MPC.log.gz
        | | | |-- update_linkage_libmpc.so.3.2.1_libgmp.so.10.log.gz
        | | | |-- update_linkage_libmpc.so.3.2.1_libmpfr.so.6.log.gz
        | | | `-- update_rpath_libmpc.so.3.2.1_libgmp.so.10.log.gz
        | | `-- share
        | | |-- info
        | | | `-- mpc.info
        | | `-- licenses
        | | `-- MPC
        | | `-- COPYING.LESSER
        | |-- 7b99956590f90a608ded76e0757af76a17f8289a
        | | |-- include
        | | | `-- symengine
        | | | |-- add.h
        | | | |-- assumptions.h
        | | | |-- basic-inl.h
        | | | |-- basic-methods.inc
        | | | |-- basic.h
        | | | |-- complex.h
        | | | |-- complex_double.h
        | | | |-- complex_mpc.h
        | | | |-- constants.h
        | | | |-- cwrapper.h
        | | | |-- derivative.h
        | | | |-- dict.h
        | | | |-- diophantine.h
        | | | |-- eval.h
        | | | |-- eval_arb.h
        | | | |-- eval_double.h
        | | | |-- eval_mpc.h
        | | | |-- eval_mpfr.h
        | | | |-- expression.h
        | | | |-- fields.h
        | | | |-- finitediff.h
        | | | |-- flint_wrapper.h
        | | | |-- functions.h
        | | | |-- infinity.h
        | | | |-- integer.h
        | | | |-- lambda_double.h
        | | | |-- llvm_double.h
        | | | |-- logic.h
        | | | |-- matrix.h
        | | | |-- monomials.h
        | | | |-- mp_class.h
        | | | |-- mp_wrapper.h
        | | | |-- mul.h
        | | | |-- nan.h
        | | | |-- ntheory.h
        | | | |-- ntheory_funcs.h
        | | | |-- number.h
        | | | |-- parser
        | | | | |-- parser.h
        | | | | |-- sbml
        | | | | | |-- sbml_parser.h
        | | | | | `-- sbml_tokenizer.h
        | | | | `-- tokenizer.h
        | | | |-- parser.h
        | | | |-- polys
        | | | | |-- basic_conversions.h
        | | | | |-- cancel.h
        | | | | |-- msymenginepoly.h
        | | | | |-- uexprpoly.h
        | | | | |-- uintpoly.h
        | | | | |-- uintpoly_flint.h
        | | | | |-- uintpoly_piranha.h
        | | | | |-- upolybase.h
        | | | | |-- uratpoly.h
        | | | | `-- usymenginepoly.h
        | | | |-- pow.h
        | | | |-- prime_sieve.h
        | | | |-- printers
        | | | | |-- codegen.h
        | | | | |-- latex.h
        | | | | |-- mathml.h
        | | | | |-- sbml.h
        | | | | |-- strprinter.h
        | | | | `-- unicode.h
        | | | |-- printers.h
        | | | |-- rational.h
        | | | |-- real_double.h
        | | | |-- real_mpfr.h
        | | | |-- refine.h
        | | | |-- rings.h
        | | | |-- serialize-cereal.h
        | | | |-- series.h
        | | | |-- series_flint.h
        | | | |-- series_generic.h
        | | | |-- series_piranha.h
        | | | |-- series_visitor.h
        | | | |-- sets.h
        | | | |-- simplify.h
        | | | |-- solve.h
        | | | |-- subs.h
        | | | |-- symbol.h
        | | | |-- symengine_assert.h
        | | | |-- symengine_casts.h
        | | | |-- symengine_config.h
        | | | |-- symengine_config_cling.h
        | | | |-- symengine_exception.h
        | | | |-- symengine_export.h
        | | | |-- symengine_rcp.h
        | | | |-- test_visitors.h
        | | | |-- tuple.h
        | | | |-- type_codes.inc
        | | | |-- utilities
        | | | | |-- cereal
        | | | | | `-- include
        | | | | | `-- cereal
        | | | | | |-- access.hpp
        | | | | | |-- archives
        | | | | | | |-- adapters.hpp
        | | | | | | |-- binary.hpp
        | | | | | | |-- json.hpp
        | | | | | | |-- portable_binary.hpp
        | | | | | | `-- xml.hpp
        | | | | | |-- cereal.hpp
        | | | | | |-- details
        | | | | | | |-- helpers.hpp
        | | | | | | |-- polymorphic_impl.hpp
        | | | | | | |-- polymorphic_impl_fwd.hpp
        | | | | | | |-- static_object.hpp
        | | | | | | |-- traits.hpp
        | | | | | | `-- util.hpp
        | | | | | |-- macros.hpp
        | | | | | |-- specialize.hpp
        | | | | | |-- types
        | | | | | | |-- array.hpp
        | | | | | | |-- atomic.hpp
        | | | | | | |-- base_class.hpp
        | | | | | | |-- bitset.hpp
        | | | | | | |-- boost_variant.hpp
        | | | | | | |-- chrono.hpp
        | | | | | | |-- common.hpp
        | | | | | | |-- complex.hpp
        | | | | | | |-- concepts
        | | | | | | | `-- pair_associative_container.hpp
        | | | | | | |-- deque.hpp
        | | | | | | |-- forward_list.hpp
        | | | | | | |-- functional.hpp
        | | | | | | |-- list.hpp
        | | | | | | |-- map.hpp
        | | | | | | |-- memory.hpp
        | | | | | | |-- optional.hpp
        | | | | | | |-- polymorphic.hpp
        | | | | | | |-- queue.hpp
        | | | | | | |-- set.hpp
        | | | | | | |-- stack.hpp
        | | | | | | |-- string.hpp
        | | | | | | |-- tuple.hpp
        | | | | | | |-- unordered_map.hpp
        | | | | | | |-- unordered_set.hpp
        | | | | | | |-- utility.hpp
        | | | | | | |-- valarray.hpp
        | | | | | | |-- variant.hpp
        | | | | | | `-- vector.hpp
        | | | | | `-- version.hpp
        | | | | `-- stream_fmt.h
        | | | `-- visitor.h
        | | |-- lib
        | | | |-- cmake
        | | | | `-- symengine
        | | | | |-- SymEngineConfig.cmake
        | | | | |-- SymEngineConfigVersion.cmake
        | | | | |-- SymEngineTargets-release.cmake
        | | | | `-- SymEngineTargets.cmake
        | | | |-- libsymengine.so -> libsymengine.so.0.9
        | | | |-- libsymengine.so.0.9 -> libsymengine.so.0.9.0
        | | | `-- libsymengine.so.0.9.0
        | | `-- share
        | | `-- licenses
        | | `-- SymEngine
        | | `-- LICENSE
        | `-- abf4b5086b4eb867021118c85b2cc11a15b764a9
        | |-- include
        | | `-- Faddeeva.h
        | |-- lib
        | | |-- libopenspecfun.a
        | | |-- libopenspecfun.so -> libopenspecfun.so.1.4
        | | |-- libopenspecfun.so.1 -> libopenspecfun.so.1.4
        | | `-- libopenspecfun.so.1.4
        | |-- logs
        | | `-- OpenSpecFun
        | | |-- OpenSpecFun.log.gz
        | | `-- relink_to_rpath_libopenspecfun.so.1.4.log.gz
        | `-- share
        | `-- licenses
        | `-- OpenSpecFun
        | `-- LICENSE.md
        `-- cert.pem

```

I ran `compiled/bin/App`, and it printed `2*x*y + x^2 + y^2` as expected.

However, when I ran it in a new container (from the same image), it throwed that

```plaintext
fatal: error thrown and no exception handler available.
InitError(mod=:SymEngine, error=ErrorException("could not load library "/root/.julia/artifacts/7b99956590f90a608ded76e0757af76a17f8289a/lib/libsymengine.so"
/root/.julia/artifacts/7b99956590f90a608ded76e0757af76a17f8289a/lib/libsymengine.so: cannot open shared object file: No such file or directory"))
ijl_errorf at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/rtutils.c:77
ijl_load_dynamic_library at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/dlload.c:369
jl_get_library_ at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/runtime_ccall.cpp:48 [inlined]
jl_get_library_ at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/runtime_ccall.cpp:30
ijl_load_and_lookup at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/runtime_ccall.cpp:61
jlplt_basic_new_stack_39327.clone_1 at /root/compiled/lib/julia/sys.so (unknown line)
init_constants at /root/.julia/packages/SymEngine/ND5HB/src/mathops.jl:98
__init__ at /root/.julia/packages/SymEngine/ND5HB/src/SymEngine.jl:37
jfptr ___init___ 39281.clone_1 at /root/compiled/lib/julia/sys.so (unknown line)
_jl_invoke at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/gf.c:2758 [inlined]
ijl_apply_generic at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/gf.c:2940
jl_apply at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/julia.h:1879 [inlined]
jl_module_run_initializer at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/toplevel.c:75
_finish_julia_init at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/init.c:850
julia_init at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/init.c:799
jl_repl_entrypoint at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/src/jlapi.c:711
main at /cache/build/default-amdci4-0/julialang/julia-release-1-dot-9/cli/loader_exe.c:59
unknown function (ip: 0x7fb89c242d8f)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x401098)

```

Why and how to fix it?  
Thank you very much~
