Now trying the tutorial: Deploying a Lotka-Volterra FMU model · FMUGeneration
But I am getting the following error:
ERROR: The following 1 direct dependency failed to precompile:
FMIBinary_lO1AZO
Failed to precompile FMIBinary_lO1AZO [15cc6e2c-9ed4-11f0-8ec7-8f1103c93337] to "/home/ufechner/.julia/compiled/v1.12/FMIBinary_lO1AZO/jl_dsoggK".
ERROR: LoadError: UndefVarError: `##meta#336` not defined in `FMIBinary_lO1AZO`
The binding may be too new: running in world age 38964, while current world is 38965.
Stacktrace:
[1] #meta#1
@ ~/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/c_api/ccallable.jl:11 [inlined]
[2] meta
@ ~/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/c_api/ccallable.jl:7 [inlined]
[3] expand_ccallable(m::Module, rt::Any, def::Any)
@ FMIBinary_lO1AZO.DeferredCCallable ~/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/c_api/ccallable.jl:47
[4] var"@ccallable"(__source__::LineNumberNode, __module__::Module, def::Any)
@ FMIBinary_lO1AZO.DeferredCCallable ~/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/c_api/ccallable.jl:68
[5] include(mapexpr::Function, mod::Module, _path::String)
@ Base ./Base.jl:307
[6] top-level scope
@ ~/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/FMIBinary_lO1AZO.jl:48
[7] include(mod::Module, _path::String)
@ Base ./Base.jl:306
[8] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing)
@ Base ./loading.jl:2997
[9] top-level scope
@ stdin:5
[10] eval(m::Module, e::Any)
@ Core ./boot.jl:489
[11] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
@ Base ./loading.jl:2843
[12] include_string
@ ./loading.jl:2853 [inlined]
[13] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:315
[14] _start()
@ Base ./client.jl:550
in expression starting at /home/ufechner/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/c_api/common.jl:12
in expression starting at /home/ufechner/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/c_api/common.jl:12
in expression starting at /home/ufechner/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl/src/FMIBinary_lO1AZO.jl:1
in expression starting at stdin:
ERROR: LoadError: failed process: Process(setenv(`/home/ufechner/.julia/juliaup/julia-1.12.0-rc3+0.x64.linux.gnu/bin/julia --color=yes --startup-file=no --pkgimages=no --sysimage=/tmp/jl_AEWZO1/tmp_sys.so -e 'using Pkg; Pkg.precompile()'`,["QT_ACCESSIBILITY=1", "USE_REVISE=false", "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus", "XDG_SESSION_TYPE=wayland", "SYSTEMD_EXEC_PID=5967", "USER=ufechner", "XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg", "LESSCLOSE=/usr/bin/lesspipe %s %s", "LC_NUMERIC=nl_NL.UTF-8", "LC_MEASUREMENT=nl_NL.UTF-8" … "VSCODE_GIT_ASKPASS_MAIN=/usr/share/code/resources/app/extensions/git/dist/askpass-main.js", "ORIGINAL_XDG_CURRENT_DESKTOP=ubuntu:GNOME", "MAMBA_EXE=/home/ufechner/.julia/artifacts/87052ac9aec71548f804b30280151288cb1ed40e/bin/micromamba", "LC_NAME=nl_NL.UTF-8", "JOURNAL_STREAM=8:24568", "LC_IDENTIFICATION=nl_NL.UTF-8", "JULIA_LOAD_PATH=/home/ufechner/.julia/scratchspaces/ca28fe3e-7809-4c0f-9d3e-a21c6e6f3e9d/JSDeploymentjl/lO1AZO/FMIBinary_lO1AZO.jl:@stdlib", "GIO_LAUNCHED_DESKTOP_FILE_PID=94681", "MAMBA_ROOT_PREFIX=/home/ufechner/micromamba", "LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.crdownload=00;90:*.dpkg-dist=00;90:*.dpkg-new=00;90:*.dpkg-old=00;90:*.dpkg-tmp=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:*.swp=00;90:*.tmp=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:"]), ProcessExited(1)) [1]
Stacktrace:
[1] pipeline_error
@ ./process.jl:598 [inlined]
[2] run(::Cmd; wait::Bool)
@ Base ./process.jl:513
[3] run
@ ./process.jl:510 [inlined]
[4] ensurecompiled(project::String, packages::Vector{String}, sysimage::String)
@ PackageCompiler ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:300
[5] create_sysimage(packages::Vector{…}; sysimage_path::String, project::String, precompile_execution_file::String, precompile_statements_file::Vector{…}, incremental::Bool, filter_stdlibs::Bool, cpu_target::String, script::String, sysimage_build_args::Cmd, include_transitive_dependencies::Bool, base_sysimage::String, julia_init_c_file::String, julia_init_h_file::Vector{…}, version::Nothing, soname::String, compat_level::String, extra_precompiles::String, import_into_main::Bool)
@ PackageCompiler ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:595
[6] create_sysimage
@ ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:532 [inlined]
[7] create_sysimage_workaround(ctx::Pkg.Types.Context, sysimage_path::String, precompile_execution_file::String, precompile_statements_file::Vector{…}, incremental::Bool, filter_stdlibs::Bool, cpu_target::String; sysimage_build_args::Cmd, include_transitive_dependencies::Bool, julia_init_c_file::String, julia_init_h_file::Vector{…}, version::Nothing, soname::String, script::String, base_sysimage::Nothing)
@ PackageCompiler ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:1187
[8] create_sysimage_workaround
@ ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:1153 [inlined]
[9] create_library(package_or_project::String, dest_dir::String; lib_name::String, precompile_execution_file::String, precompile_statements_file::Vector{…}, incremental::Bool, filter_stdlibs::Bool, force::Bool, header_files::Vector{…}, julia_init_c_file::String, julia_init_h_file::Vector{…}, version::Nothing, compat_level::String, cpu_target::String, include_lazy_artifacts::Bool, sysimage_build_args::Cmd, include_transitive_dependencies::Bool, include_preferences::Bool, script::String, base_sysimage::Nothing)
@ PackageCompiler ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:1100
[10] create_library
@ ~/.julia/packages/PackageCompiler/FtDNu/src/PackageCompiler.jl:1034 [inlined]
[11] generate_fmu_sysimage!(lib_path::String, fmu_name::String, path::FMUGeneration.var"#path#44"{…}; incremental::Bool, include_lazy_artifacts::Bool, sysimage_kwargs::@Kwargs{})
@ FMUGeneration ~/.julia/packages/FMUGeneration/HKWrt/src/compile.jl:112
[12] generate_fmu_sysimage!
@ ~/.julia/packages/FMUGeneration/HKWrt/src/compile.jl:106 [inlined]
[13] compile_fmu(fmu_name::String, fmi_version::FMUGeneration.FMIEnums.FMIVersion, lib_path::String, xml_path::String, fmu_path::String; include_lazy_artifacts::Bool, incremental::Bool, lib_path_dir::String, sysimage_kwargs::@Kwargs{})
@ FMUGeneration ~/.julia/packages/FMUGeneration/HKWrt/src/compile.jl:56
[14] compile_fmu
@ ~/.julia/packages/FMUGeneration/HKWrt/src/compile.jl:38 [inlined]
[15] compile!(fmu::JuliaFMU; fmu_path::String, kwargs::@Kwargs{})
@ FMUGeneration ~/.julia/packages/FMUGeneration/HKWrt/src/api.jl:265
[16] compile!
@ ~/.julia/packages/FMUGeneration/HKWrt/src/api.jl:261 [inlined]
[17] JuliaFMU(name::String, fmi_version::FMUGeneration.FMIEnums.FMIVersion, fmi_types::Vector{…}; default_tspan::Tuple{…}, default_stepsize::Nothing, default_tolerance::Nothing, parameters::Vector{…}, inputs::Vector{…}, states::Vector{…}, outputs::Vector{…}, dependencies::Tuple{…}, deserialization_utils::Vector{…}, objects::Vector{…}, dynamics_utils::Vector{…}, ode_function::Expr, state_initializer::Expr, observables_function::Nothing, cosimulator::Nothing, cosimulator_solver::Expr, cosimulator_odefunction_options::@NamedTuple{}, cosimulator_integrator_options::@NamedTuple{}, n_octavian_threads::Int64, build::Bool, kwargs::@Kwargs{})
@ FMUGeneration ~/.julia/packages/FMUGeneration/HKWrt/src/api.jl:225
[18] top-level scope
@ ~/repos/FMU_Test/examples/first.jl:0
[19] macro expansion
@ ~/.julia/packages/FMUGeneration/HKWrt/src/code_generation/macros.jl:54 [inlined]
[20] include(mapexpr::Function, mod::Module, _path::String)
@ Base ./Base.jl:307
[21] top-level scope
@ REPL[4]:1
in expression starting at /home/ufechner/repos/FMU_Test/examples/first.jl:21
Some type information was truncated. Use `show(err)` to see complete types.
Using Julia 1.12-rc3 on Linux.
UPDATE
I tried again with Julia 1.11 and that works!
But then I cannot use the nice option use_juliac=true
.
Guess I have to wait until Julia 1.12 is released.
Update II
I could create an FMU and import it in Simulink. But if I try to run the simulation, it crashes. Is this example FMU supposed to work with Simulink?
I use Matlab R2025a.