JuliaPy / JuliaPy/PyCall.jl

Error on building 'PyCall' argument not expected: --satisfied-skip-solve

Offen
#1,066 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Julia
Sterne
1.5k
Forks
186
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Julia can't build and precompile some packages as PyCall.jl The problem is produced in the build process when force the argument when set the root environment with conda install -y --satisfied-skip-solve numpy when the version of conda/mamba do not accept this argument.

It could solve by make false the "satisfied_skip_solve" or simply take off the argument (if do not want to use other verification)

use_conda = dirname(python) == abspath(Conda.PYTHONDIR) if use_conda Conda.add("numpy"; satisfied_skip_solve=true ) end

On Mac OSX Sonoma 14.2 apple chip M2
Julia 1.9.3, Python 3.12 and Mamba(Conda)

julia> Pkg.build("PyCall"); Pkg.precompile() Building Conda ─→ /opt/mamba/envs/mcd/share/julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/8c86e48c0db1564a1d49548d3515ced5d604c408/build.log Building PyCall → /opt/mamba/envs/mcd/share/julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/43d304ac6f0354755f1d60730ece8c499980f7ba/build.log ERROR: Error building PyCall: The following argument was not expected: --satisfied-skip-solve Run with --help for more information. [ Info: Running conda install -y --satisfied-skip-solve numpy in root environment ERROR: LoadError: failed process: Process(setenv(/opt/homebrew/opt/micromamba/bin/micromamba install -y --satisfied-skip-solve numpy`,["FC_FOR_BUILD=/opt/mamba/envs/mcd/bin/x86_64-apple-darwin13.4.0-gfortran", "LSCOLORS=Gxfxcxdxbxegedabagacad", "PATH=/opt/mamba/envs/mcd/bin:/opt/mamba/condabin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Applications/quarto/bin:/opt/homebrew/var/homebrew/linked", "CXX=x86_64-apple-darwin13.4.0-clang++", "DENO_DOM_VERSION=0.1.35-alpha", "F95=/opt/mamba/envs/mcd/bin/x86_64-apple-darwin13.4.0-gfortran", "CC=x86_64-apple-darwin13.4.0-clang", "CXXFLAGS=-march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem /opt/mamba/envs/mcd/include", "OTOOL=x86_64-apple-darwin13.4.0-otool", "DEBUG_CFLAGS=-march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -Og -g -Wall -Wextra -isystem /opt/mamba/envs/mcd/include" … "TERM_SESSION_ID=E9F5F9AB-DC24-46BA-85CF-5C439346566B", "ac_cv_func_realloc_0_nonnull=yes", "BUILD=x86_64-apple-darwin13.4.0", "QUARTO_DENO=/opt/mamba/envs/mcd/bin/deno", "JULIA_LOAD_PATH=@:/var/folders/75/ftt9_lrn0292knych8n_rsgw0000gn/T/jl_KuLfDj", "DEBUG_CXXFLAGS=-march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -Og -g -Wall -Wextra -isystem /opt/mamba/envs/mcd/include", "ac_cv_func_malloc_0_nonnull=yes", "MAMBA_ROOT_PREFIX=/opt/mamba", "LS_COLORS=di=1;36:ln=35:so=32:pi=33:ex=31:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43", "OPENBLAS_MAIN_FREE=1"]), ProcessExited(109)) [109]

Stacktrace:
[1] pipeline_error
@ ./process.jl:565 [inlined]
[2] run(::Cmd; wait::Bool)
@ Base ./process.jl:480
[3] run
@ ./process.jl:477 [inlined]
[4] runconda(args::Cmd, env::String)
@ Conda /opt/mamba/envs/mcd/share/julia/packages/Conda/2lg2O/src/Conda.jl:128
[5] add(pkg::String, env::String; channel::String, satisfied_skip_solve::Bool, args::Cmd)
@ Conda /opt/mamba/envs/mcd/share/julia/packages/Conda/2lg2O/src/Conda.jl:256
[6] add
@ /opt/mamba/envs/mcd/share/julia/packages/Conda/2lg2O/src/Conda.jl:239 [inlined]
[7] top-level scope
@ /opt/mamba/envs/mcd/share/julia/packages/PyCall/ilqDX/deps/build.jl:79
[8] include(fname::String)
@ Base.MainInclude ./client.jl:478
[9] top-level scope
@ none:5
in expression starting at /opt/mamba/envs/mcd/share/julia/packages/PyCall/ilqDX/deps/build.jl:43
Stacktrace:
[1] pkgerror(msg::String)
@ Pkg.Types /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Types.jl:69
[2] (::Pkg.Operations.var"#67#74"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String})()
@ Pkg.Operations /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1153
[3] withenv(::Pkg.Operations.var"#67#74"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, ::Pair{String, String}, ::Vararg{Pair{String}})
@ Base ./env.jl:197
[4] (::Pkg.Operations.var"#117#122"{String, Bool, Bool, Bool, Pkg.Operations.var"#67#74"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.PackageSpec})()
@ Pkg.Operations /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1827
[5] with_temp_env(fn::Pkg.Operations.var"#117#122"{String, Bool, Bool, Bool, Pkg.Operations.var"#67#74"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.PackageSpec}, temp_env::String)
@ Pkg.Operations /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1701
[6] (::Pkg.Operations.var"#115#120"{Dict{String, Any}, Bool, Bool, Bool, Pkg.Operations.var"#67#74"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec, String}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String})(tmp::String)
@ Pkg.Operations /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1790
[7] mktempdir(fn::Pkg.Operations.var"#115#120"{Dict{String, Any}, Bool, Bool, Bool, Pkg.Operations.var"#67#74"{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:760
[8] mktempdir(fn::Function, parent::String)
@ Base.Filesystem ./file.jl:756
[9] mktempdir
@ ./file.jl:756 [inlined]
[10] 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 /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1748
[11] build_versions(ctx::Pkg.Types.Context, uuids::Set{Base.UUID}; verbose::Bool)
@ Pkg.Operations /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1134
[12] build_versions
@ /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:1049 [inlined]
[13] build(ctx::Pkg.Types.Context, uuids::Set{Base.UUID}, verbose::Bool)
@ Pkg.Operations /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/Operations.jl:991
[14] 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 /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:1053
[15] build(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Pkg.API /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:156
[16] build(pkgs::Vector{Pkg.Types.PackageSpec})
@ Pkg.API /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:145
[17] #build#85
@ /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:144 [inlined]
[18] build
@ /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:144 [inlined]
[19] #build#84
@ /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:143 [inlined]
[20] build(pkg::String)
@ Pkg.API /opt/mamba/envs/mcd/share/julia/stdlib/v1.9/Pkg/src/API.jl:143
[21] top-level scope
@ REPL[46]:1

`

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginnen Sie mit PyCalls deps/build.jl beim fehlschlagenden Aufruf um Zeile 79 und untersuchen Sie anschließend Conda/src/Conda.jl rund um add und runconda. Reproduzieren Sie das Problem mit Pkg.build("PyCall") unter Verwendung des gemeldeten conda- oder mamba-Setups. Die Aufgabe ist abgeschlossen, wenn der Build kein nicht unterstütztes --satisfied-skip-solve-Argument mehr übergibt und erfolgreich abgeschlossen wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
julia, python
Bereich
build-system
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.