GTorlai / PastaQ.jl

Package for Simulation, Tomography and Analysis of Quantum Computers
Apache License 2.0
142 stars 23 forks source link

PastaQ failed installation #258

Closed ghost closed 2 years ago

ghost commented 2 years ago

Following a fresh installation of Julia (v1.7.2, macOS ARM (M-series Processor)) I installed ITensors without issue, but Installing PastaQ failed...

Is it known whether PastaQ is compatible with the M-series chip?

The full output:

(@v1.7) pkg> add ITensors
  Installing known registries into `~/.julia`
    Updating registry at `~/.julia/registries/General.toml`
   Resolving package versions...
   Installed Blosc_jll ─────────────── v1.21.1+0
   Installed Zstd_jll ──────────────── v1.5.2+0
   Installed OpenSSL_jll ───────────── v1.1.13+0
   Installed Zeros ─────────────────── v0.3.0
   Installed Scratch ───────────────── v1.1.0
   Installed Preferences ───────────── v1.2.4
   Installed RelocatableFolders ────── v0.1.3
   Installed LinearMaps ────────────── v3.5.1
   Installed Dictionaries ──────────── v0.3.18
   Installed StaticArrays ──────────── v1.4.0
   Installed TimerOutputs ──────────── v0.5.15
   Installed Indexing ──────────────── v1.1.1
   Installed NDTensors ─────────────── v0.1.34
   Installed ChainRulesCore ────────── v1.13.0
   Installed PackageCompiler ───────── v2.0.5
   Installed HDF5 ──────────────────── v0.15.7
   Installed JLLWrappers ───────────── v1.4.1
   Installed ITensors ──────────────── v0.2.15
   Installed Lz4_jll ───────────────── v1.9.3+0
   Installed ZygoteRules ───────────── v0.2.2
   Installed Strided ───────────────── v1.1.2
   Installed SerializedElementArrays ─ v0.1.0
   Installed Requires ──────────────── v1.3.0
   Installed MacroTools ────────────── v0.5.9
   Installed Compat ────────────────── v3.41.0
   Installed ExprTools ─────────────── v0.1.8
   Installed HDF5_jll ──────────────── v1.12.1+0
   Installed TupleTools ────────────── v1.3.0
   Installed Blosc ─────────────────── v0.7.3
   Installed KrylovKit ─────────────── v0.5.3
  Downloaded artifact: Blosc
  Downloaded artifact: Zstd
  Downloaded artifact: OpenSSL
  Downloaded artifact: Lz4
  Downloaded artifact: HDF5
    Updating `~/.julia/environments/v1.7/Project.toml`
  [9136182c] + ITensors v0.2.15
    Updating `~/.julia/environments/v1.7/Manifest.toml`
  [a74b3585] + Blosc v0.7.3
  [d360d2e6] + ChainRulesCore v1.13.0
  [34da2185] + Compat v3.41.0
  [85a47980] + Dictionaries v0.3.18
  [e2ba6199] + ExprTools v0.1.8
  [f67ccb44] + HDF5 v0.15.7
  [9136182c] + ITensors v0.2.15
  [313cdc1a] + Indexing v1.1.1
  [692b3bcd] + JLLWrappers v1.4.1
  [0b1a1467] + KrylovKit v0.5.3
  [7a12625a] + LinearMaps v3.5.1
  [1914dd2f] + MacroTools v0.5.9
  [23ae76d9] + NDTensors v0.1.34
  [9b87118b] + PackageCompiler v2.0.5
  [21216c6a] + Preferences v1.2.4
  [05181044] + RelocatableFolders v0.1.3
  [ae029012] + Requires v1.3.0
  [6c6a2e73] + Scratch v1.1.0
  [d3ce8812] + SerializedElementArrays v0.1.0
  [90137ffa] + StaticArrays v1.4.0
  [5e0ebb24] + Strided v1.1.2
  [a759f4b9] + TimerOutputs v0.5.15
  [9d95972d] + TupleTools v1.3.0
  [bd1ec220] + Zeros v0.3.0
  [700de1a5] + ZygoteRules v0.2.2
  [0b7ba130] + Blosc_jll v1.21.1+0
  [0234f1f7] + HDF5_jll v1.12.1+0
  [5ced341a] + Lz4_jll v1.9.3+0
  [458c3c95] + OpenSSL_jll v1.1.13+0
  [3161d3a3] + Zstd_jll v1.5.2+0
  [0dad84c5] + ArgTools
  [56f22d72] + Artifacts
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [8bb1440f] + DelimitedFiles
  [8ba89e20] + Distributed
  [f43a241f] + Downloads
  [b77e0a4c] + InteractiveUtils
  [4af54fe1] + LazyArtifacts
  [b27032c2] + LibCURL
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [37e2e46d] + LinearAlgebra
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [a63ad114] + Mmap
  [ca575930] + NetworkOptions
  [44cfe95a] + Pkg
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA
  [9e88b42a] + Serialization
  [1a1011a3] + SharedArrays
  [6462fe0b] + Sockets
  [2f01184e] + SparseArrays
  [10745b16] + Statistics
  [fa267f1f] + TOML
  [a4e569a6] + Tar
  [8dfed614] + Test
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode
  [e66e0078] + CompilerSupportLibraries_jll
  [deac9b47] + LibCURL_jll
  [29816b5a] + LibSSH2_jll
  [c8ffd9c3] + MbedTLS_jll
  [14a3606d] + MozillaCACerts_jll
  [4536629a] + OpenBLAS_jll
  [83775a58] + Zlib_jll
  [8e850b90] + libblastrampoline_jll
  [8e850ede] + nghttp2_jll
  [3f19e933] + p7zip_jll
    Building HDF5 → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/698c099c6613d7b7f151832868728f426abe698b/build.log`
Precompiling project...
  36 dependencies successfully precompiled in 18 seconds

(@v1.7) pkg> add PastaQ
   Resolving package versions...
   Installed IrrationalConstants ─ v0.1.1
   Installed Bzip2_jll ─────────── v1.0.8+0
   Installed SCS ───────────────── v0.7.1
   Installed CodecBzip2 ────────── v0.7.2
   Installed Parsers ───────────── v2.2.2
   Installed JSON ──────────────── v0.21.3
   Installed JSONSchema ────────── v0.3.4
   Installed MutableArithmetics ── v0.2.22
   Installed BenchmarkTools ────── v1.3.1
   Installed SCS_GPU_jll ───────── v2.1.4+0
   Installed DataAPI ───────────── v1.9.0
   Installed IniFile ───────────── v0.5.1
   Installed Optimisers ────────── v0.1.0
   Installed URIs ──────────────── v1.3.0
   Installed Functors ──────────── v0.2.8
   Installed AbstractTrees ─────── v0.3.4
   Installed OrderedCollections ── v1.4.1
   Installed AMD ───────────────── v0.4.0
   Installed JLD2 ──────────────── v0.4.21
   Installed MathProgBase ──────── v0.7.8
   Installed HTTP ──────────────── v0.9.17
   Installed TranscodingStreams ── v0.9.6
   Installed Reexport ──────────── v1.2.2
   Installed MbedTLS ───────────── v1.0.3
   Installed Convex ────────────── v0.14.18
   Installed BinaryProvider ────── v0.5.10
   Installed SCS_jll ───────────── v2.1.2+1
   Installed StatsAPI ──────────── v1.2.1
   Installed LogExpFunctions ───── v0.3.6
   Installed DataStructures ────── v0.18.11
   Installed InverseFunctions ──── v0.1.2
   Installed CodecZlib ─────────── v0.7.0
   Installed SortingAlgorithms ─── v1.0.1
   Installed StatsBase ─────────── v0.33.16
   Installed MathOptInterface ──── v0.9.22
   Installed Missings ──────────── v1.0.2
   Installed ChangesOfVariables ── v0.1.2
   Installed DocStringExtensions ─ v0.8.6
   Installed LDLFactorizations ─── v0.8.1
   Installed Observers ─────────── v0.0.6
   Installed FileIO ────────────── v1.13.0
   Installed PastaQ ────────────── v0.0.19
  Downloaded artifact: Bzip2
    Updating `~/.julia/environments/v1.7/Project.toml`
  [30b07047] + PastaQ v0.0.19
    Updating `~/.julia/environments/v1.7/Manifest.toml`
  [14f7f29c] + AMD v0.4.0
  [1520ce14] + AbstractTrees v0.3.4
  [6e4b80f9] + BenchmarkTools v1.3.1
  [b99e7846] + BinaryProvider v0.5.10
  [9e997f8a] + ChangesOfVariables v0.1.2
  [523fee87] + CodecBzip2 v0.7.2
  [944b1d66] + CodecZlib v0.7.0
  [f65535da] + Convex v0.14.18
  [9a962f9c] + DataAPI v1.9.0
  [864edb3b] + DataStructures v0.18.11
  [ffbed154] + DocStringExtensions v0.8.6
  [5789e2e9] + FileIO v1.13.0
  [d9f16b24] + Functors v0.2.8
  [cd3eb016] + HTTP v0.9.17
  [83e8ac13] + IniFile v0.5.1
  [3587e190] + InverseFunctions v0.1.2
  [92d709cd] + IrrationalConstants v0.1.1
  [033835bb] + JLD2 v0.4.21
  [682c06a0] + JSON v0.21.3
  [7d188eb4] + JSONSchema v0.3.4
  [40e66cde] + LDLFactorizations v0.8.1
  [2ab3a3ac] + LogExpFunctions v0.3.6
  [b8f27783] + MathOptInterface v0.9.22
  [fdba3010] + MathProgBase v0.7.8
  [739be429] + MbedTLS v1.0.3
  [e1d29d7a] + Missings v1.0.2
  [d8a4904e] + MutableArithmetics v0.2.22
  [338f10d5] + Observers v0.0.6
  [3bd65402] + Optimisers v0.1.0
  [bac558e1] + OrderedCollections v1.4.1
  [69de0a69] + Parsers v2.2.2
  [30b07047] + PastaQ v0.0.19
  [189a3867] + Reexport v1.2.2
  [c946c3f1] + SCS v0.7.1
  [a2af1166] + SortingAlgorithms v1.0.1
  [82ae8749] + StatsAPI v1.2.1
  [2913bbd2] + StatsBase v0.33.16
  [3bb67fe8] + TranscodingStreams v0.9.6
  [5c2747f8] + URIs v1.3.0
  [6e34b625] + Bzip2_jll v1.0.8+0
  [af6e375f] + SCS_GPU_jll v2.1.4+0
  [f4f2fc5b] + SCS_jll v2.1.2+1
  [9abbd945] + Profile
    Building SCS → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/efc1cf417dffb455b74a3d48857ae418098fc8a1/build.log`
Precompiling project...
  ✗ BinaryProvider
  ✗ SCS
  ✗ PastaQ
  39 dependencies successfully precompiled in 66 seconds (36 already precompiled)
  3 dependencies errored. To see a full report either run `import Pkg; Pkg.precompile()` or load the packages

julia> using PastaQ
[ Info: Precompiling PastaQ [30b07047-aa8b-4c78-a4e8-24d720215c19]
ERROR: LoadError: UndefVarError: libscsindir not defined
Stacktrace:
 [1] getproperty(x::Module, f::Symbol)
   @ Base ./Base.jl:35
 [2] top-level scope
   @ ~/.julia/packages/SCS/xTUCf/src/SCS.jl:22
 [3] include
   @ ./Base.jl:418 [inlined]
 [4] 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:1318
 [5] top-level scope
   @ none:1
 [6] eval
   @ ./boot.jl:373 [inlined]
 [7] eval(x::Expr)
   @ Base.MainInclude ./client.jl:453
 [8] top-level scope
   @ none:1
in expression starting at /Users/joe/.julia/packages/SCS/xTUCf/src/SCS.jl:1
ERROR: LoadError: Failed to precompile SCS [c946c3f1-0d1f-5ce8-9dea-7daa1f7e2d13] to /Users/joe/.julia/compiled/v1.7/SCS/jl_rTEnd3.
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:33
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool)
    @ Base ./loading.jl:1466
  [3] compilecache(pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1410
  [4] _require(pkg::Base.PkgId)
    @ Base ./loading.jl:1120
  [5] require(uuidkey::Base.PkgId)
    @ Base ./loading.jl:1013
  [6] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:997
  [7] include
    @ ./Base.jl:418 [inlined]
  [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, UInt64}}, source::Nothing)
    @ Base ./loading.jl:1318
  [9] top-level scope
    @ none:1
 [10] eval
    @ ./boot.jl:373 [inlined]
 [11] eval(x::Expr)
    @ Base.MainInclude ./client.jl:453
 [12] top-level scope
    @ none:1
in expression starting at /Users/joe/.julia/packages/PastaQ/dYp8T/src/PastaQ.jl:1
ERROR: Failed to precompile PastaQ [30b07047-aa8b-4c78-a4e8-24d720215c19] to /Users/joe/.julia/compiled/v1.7/PastaQ/jl_lORrwa.
Stacktrace:
 [1] error(s::String)
   @ Base ./error.jl:33
 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool)
   @ Base ./loading.jl:1466
 [3] compilecache(pkg::Base.PkgId, path::String)
   @ Base ./loading.jl:1410
 [4] _require(pkg::Base.PkgId)
   @ Base ./loading.jl:1120
 [5] require(uuidkey::Base.PkgId)
   @ Base ./loading.jl:1013
 [6] require(into::Module, mod::Symbol)
   @ Base ./loading.jl:997
mtfishman commented 2 years ago

Looks related to:

https://github.com/jump-dev/SCS.jl/issues/235 https://github.com/JuliaPackaging/BinaryProvider.jl/issues/205

I'm not sure why we have those dependencies to begin with (EDIT: I guess SCS is used for convex optimization in full state tomography). @GTorlai

GTorlai commented 2 years ago

Exactly. However, there are other solvers we could use, I can look into it.

mtfishman commented 2 years ago

@JoeGibbs88 did you resolve this in some way?

LionSR commented 2 years ago

@JoeGibbs88 did you resolve this in some way?

Hi! On my side I am still seeing the same problem as @JoeGibbs88 with the master branches. It would be very sweet to see it resolved. Thanks a lot in advance!

(@v1.7) pkg> add PastaQ#master Cloning git-repohttps://github.com/GTorlai/PastaQ.jl.git Updating git-repohttps://github.com/GTorlai/PastaQ.jl.git Resolving package versions... ERROR: Unsatisfiable requirements detected for package SCS [c946c3f1]: SCS [c946c3f1] log: ├─possible versions are: 1.1.0 or uninstalled ├─SCS [c946c3f1] is fixed to version 1.1.0 └─restricted to versions 0.7.1-0.7 by PastaQ [30b07047] — no versions left └─PastaQ [30b07047] log: ├─possible versions are: 0.0.20 or uninstalled └─PastaQ [30b07047] is fixed to version 0.0.20

GTorlai commented 2 years ago

@LionSR we are working on a fix for this.

GTorlai commented 2 years ago

@JoeGibbs88 @LionSR Merging the fix now, let us know if you are able to install.