OM.jl
OM.jl copied to clipboard
Running install script on ARM Mac leads to error
ERROR: LoadError: could not load library "/Users/mkloopix/Downloads/tee/OM.jl/OMParser.jl/lib/ext/shared/x86_64-darwin20.6.0/libomparse-julia.dylib"
dlopen(/Users/mkloopix/Downloads/tee/OM.jl/OMParser.jl/lib/ext/shared/x86_64-darwin20.6.0/libomparse-julia.dylib, 0x0001): tried: '/Users/mkloopix/Downloads/tee/OM.jl/OMParser.jl/lib/ext/shared/x86_64-darwin20.6.0/libomparse-julia.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/mkloopix/Downloads/tee/OM.jl/OMParser.jl/lib/ext/shared/x86_64-darwin20.6.0/libomparse-julia.dylib' (no such file), '/Users/mkloopix/Downloads/tee/OM.jl/OMParser.jl/lib/ext/shared/x86_64-darwin20.6.0/libomparse-julia.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64'))
Stacktrace:
[1] parseFile(fileName::String, acceptedGram::Int64, languageStandard::Int64) (repeats 2 times)
@ OMParser ~/Downloads/tee/OM.jl/OMParser.jl/src/OMParser.jl:146
[2] top-level scope
@ ~/Downloads/tee/OM.jl/OMFrontend.jl/src/main.jl:161
[3] include(mod::Module, _path::String)
@ Base ./Base.jl:419
[4] include(x::String)
@ OMFrontend ~/Downloads/tee/OM.jl/OMFrontend.jl/src/OMFrontend.jl:4
[5] top-level scope
@ ~/Downloads/tee/OM.jl/OMFrontend.jl/src/OMFrontend.jl:49
[6] include
@ ./Base.jl:419 [inlined]
[7] 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, UInt64}}, source::String)
@ Base ./loading.jl:1554
[8] top-level scope
@ stdin:1
in expression starting at /Users/mkloopix/Downloads/tee/OM.jl/OMFrontend.jl/src/main.jl:2
in expression starting at /Users/mkloopix/Downloads/tee/OM.jl/OMFrontend.jl/src/OMFrontend.jl:1
in expression starting at stdin:1
ERROR: LoadError: Failed to precompile OMFrontend [b10394b5-f439-4073-a0c5-e09cb00cf46c] to /Users/mkloopix/.julia/compiled/v1.8/OMFrontend/jl_4ezFcB.
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:35
[2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
@ Base ./loading.jl:1707
[3] compilecache
@ ./loading.jl:1651 [inlined]
[4] _require(pkg::Base.PkgId)
@ Base ./loading.jl:1337
[5] _require_prelocked(uuidkey::Base.PkgId)
@ Base ./loading.jl:1200
[6] macro expansion
@ ./loading.jl:1180 [inlined]
[7] macro expansion
@ ./lock.jl:223 [inlined]
[8] require(into::Module, mod::Symbol)
@ Base ./loading.jl:1144
[9] include
@ ./Base.jl:419 [inlined]
[10] 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, UInt64}}, source::String)
@ Base ./loading.jl:1554
[11] top-level scope
@ stdin:1
in expression starting at /Users/mkloopix/Downloads/tee/OM.jl/src/OM.jl:1
in expression starting at stdin:1
ERROR: LoadError: Failed to precompile OM [2f925a0b-2436-437b-858e-49aee461894b] to /Users/mkloopix/.julia/compiled/v1.8/OM/jl_qZuZVK.
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:35
[2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
@ Base ./loading.jl:1707
[3] compilecache
@ ./loading.jl:1651 [inlined]
[4] _require(pkg::Base.PkgId)
@ Base ./loading.jl:1337
[5] _require_prelocked(uuidkey::Base.PkgId)
@ Base ./loading.jl:1200
[6] macro expansion
@ ./loading.jl:1180 [inlined]
[7] macro expansion
@ ./lock.jl:223 [inlined]
[8] require(into::Module, mod::Symbol)
@ Base ./loading.jl:1144
[9] include
@ ./client.jl:476 [inlined]
[10] top-level scope
@ ./timing.jl:262
[11] include(fname::String)
@ Base.MainInclude ./client.jl:476
[12] top-level scope
@ REPL[1]:1
in expression starting at /Users/mkloopix/Downloads/tee/OM.jl/run.jl:7
in expression starting at /Users/mkloopix/Downloads/tee/OM.jl/install.jl:34
Yes, one would need to compile the parser library for ARM. I have some changes for that, I will make a PR.