SpecialFunctions do not compile on an Apple M2 (but on an Apple M1)?
kellertuer opened this issue · comments
Ronny Bergmann commented
I am working with a student who got a new computer (Apple M2) while I still have the M1. We tried to narrow down the dependencies already, but it seems on her machine it does not compile, the error message is
ERROR: Error building `SpecialFunctions`:
┌ Warning: Platform `arm64-apple-darwin21.5.0` is not an officially supported platform
└ @ BinaryProvider ~/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:450
ERROR: LoadError: KeyError: key "unknown" not found
Stacktrace:
[1] getindex
@ ./dict.jl:498 [inlined]
[2] parse_dl_name_version
@ ~/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:511 [inlined]
[3] detect_libgfortran_abi(libgfortran_name::String, platform::BinaryProvider.UnknownPlatform) (repeats 2 times)
@ BinaryProvider ~/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:555
[4] detect_libgfortran_abi
@ ~/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:584 [inlined]
[5] detect_compiler_abi()
@ BinaryProvider ~/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:667
[6] top-level scope
@ ~/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:685
[7] include(mod::Module, _path::String)
@ Base ./Base.jl:419
[8] include(x::String)
@ BinaryProvider ~/.julia/packages/BinaryProvider/U2dKK/src/BinaryProvider.jl:1
[9] top-level scope
@ ~/.julia/packages/BinaryProvider/U2dKK/src/BinaryProvider.jl:12
[10] include
@ ./Base.jl:419 [inlined]
[11] 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
[12] top-level scope
@ stdin:1
in expression starting at /Users/solvorsevland/.julia/packages/BinaryProvider/U2dKK/src/PlatformNames.jl:685
in expression starting at /Users/solvorsevland/.julia/packages/BinaryProvider/U2dKK/src/BinaryProvider.jl:1
in expression starting at stdin:1
ERROR: LoadError: Failed to precompile BinaryProvider [b99e7846-7c00-51b0-8f62-c81ae34c0232] to /Users/solvorsevland/.julia/compiled/v1.8/BinaryProvider/jl_SWmOOF.
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:1705
[3] compilecache
@ ./loading.jl:1649 [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(fname::String)
@ Base.MainInclude ./client.jl:476
[10] top-level scope
@ none:5
in expression starting at /Users/solvorsevland/.julia/packages/SpecialFunctions/ne2iw/deps/build.jl:1
Stacktrace:
[1] pkgerror(msg::String)
@ Pkg.Types ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Types.jl:67
[2] (::Pkg.Operations.var"#66#73"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String})()
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:1060
[3] withenv(::Pkg.Operations.var"#66#73"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, ::Pair{String, String}, ::Vararg{Pair{String}})
@ Base ./env.jl:172
[4] (::Pkg.Operations.var"#107#112"{String, Bool, Bool, Bool, Pkg.Operations.var"#66#73"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.PackageSpec})()
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:1619
[5] with_temp_env(fn::Pkg.Operations.var"#107#112"{String, Bool, Bool, Bool, Pkg.Operations.var"#66#73"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.PackageSpec}, temp_env::String)
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:1493
[6] (::Pkg.Operations.var"#105#110"{Dict{String, Any}, Bool, Bool, Bool, Pkg.Operations.var"#66#73"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String})(tmp::String)
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:1582
[7] mktempdir(fn::Pkg.Operations.var"#105#110"{Dict{String, Any}, Bool, Bool, Bool, Pkg.Operations.var"#66#73"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String}, parent::String; prefix::String)
@ Base.Filesystem ./file.jl:764
[8] mktempdir(fn::Function, parent::String) (repeats 2 times)
@ Base.Filesystem ./file.jl:760
[9] sandbox(fn::Function, ctx::Pkg.Types.Context, target::Pkg.Types.PackageSpec, target_path::String, sandbox_path::String, sandbox_project_override::Pkg.Types.Project; preferences::Dict{String, Any}, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool)
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:1540
[10] build_versions(ctx::Pkg.Types.Context, uuids::Set{Base.UUID}; verbose::Bool)
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:1041
[11] build(ctx::Pkg.Types.Context, uuids::Set{Base.UUID}, verbose::Bool)
@ Pkg.Operations ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/Operations.jl:898
[12] build(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; verbose::Bool, kwargs::Base.Pairs{Symbol, Base.TTY, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.TTY}}})
@ Pkg.API ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:1024
[13] build(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Pkg.API ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:156
[14] build(pkgs::Vector{Pkg.Types.PackageSpec})
@ Pkg.API ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:145
[15] #build#99
@ ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:144 [inlined]
[16] build
@ ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:144 [inlined]
[17] #build#98
@ ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:143 [inlined]
[18] build(pkg::String)
@ Pkg.API ~/.julia/juliaup/julia-1.8.1+0.aarch64/share/julia/stdlib/v1.8/Pkg/src/API.jl:143
[19] top-level scope
@ REPL[36]:1
So the warning for me is ok, but I am not sure why it then errors in an unknown key.
Mosè Giordano commented
You're using an extremely old version of SpecialFunctions, before #187, which is from 4 years ago.
Ronny Bergmann commented
Oh, it was just among the dependencies, then I have to check which package has so low bounds (maybe ColorSchemes or something). Thanks!