ADCME.jl icon indicating copy to clipboard operation
ADCME.jl copied to clipboard

Error when building Pkg on Julia 1.4

Open rafaelorozco opened this issue 3 years ago • 15 comments

Hello! I am trying to install the package using Julia Version 1.4.2 (2020-05-23). (on mac)

Pkg.add("ADCME") ran succesfully but after trying to do using ADCME I get an error saying that I need to build the package:

julia> using ADCME
[ Info: Precompiling ADCME [07b341a0-ce75-57c6-b2de-414ffdc00be5]
ERROR: LoadError: ADCME is not properly built; run `Pkg.build("ADCME")` to fix the problem.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] top-level scope at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/ADCME.jl:44
 [3] include(::Module, ::String) at ./Base.jl:377
 [4] top-level scope at none:2
 [5] eval at ./boot.jl:331 [inlined]
 [6] eval(::Expr) at ./client.jl:449
 [7] top-level scope at ./none:3
in expression starting at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/ADCME.jl:32
ERROR: Failed to precompile ADCME [07b341a0-ce75-57c6-b2de-414ffdc00be5] to /Users/rafaelorozco/.julia/compiled/v1.4/ADCME/b8Ld2_gZGSU.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1272
 [3] _require(::Base.PkgId) at ./loading.jl:1029
 [4] require(::Base.PkgId) at ./loading.jl:927
 [5] require(::Module, ::Symbol) at ./loading.jl:922

The error I get during building seems to be about a unzip tool that isnt found in the proper place. Could you help me with this?

julia> Pkg.build("ADCME")
   Building Conda ─→ `~/.julia/packages/Conda/x5ml4/deps/build.log`
   Building PyCall → `~/.julia/packages/PyCall/BcTLp/deps/build.log`
   Building CMake ─→ `~/.julia/packages/CMake/ULbyn/deps/build.log`
   Building HDF5 ──→ `~/.julia/packages/HDF5/T1b9x/deps/build.log`
   Building FFTW ──→ `~/.julia/packages/FFTW/DMUbN/deps/build.log`
   Building ADCME ─→ `~/.julia/packages/ADCME/XXrZo/deps/build.log`
┌ Error: Error building `ADCME`: 
│ ┌ Warning: Pkg.installed() is deprecated
│ └ @ Pkg /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Pkg.jl:531
│ ┌ Warning: Pkg.installed() is deprecated
│ └ @ Pkg /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Pkg.jl:531
│ [ Info: Your Julia version is 1.4.2, current ADCME version is 0.6.5, ADCME dependencies installation path: /Users/rafaelorozco/.julia/adcme
│ [ Info:  --------------- (1/6) Install Tensorflow Dependencies  --------------- 
│ [ Info: ADCME dependencies have already been installed.
│ [ Info:  --------------- (2/6) Check Python Version  --------------- 
│ ┌ Warning: Pkg.installed() is deprecated
│ └ @ Pkg /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Pkg.jl:531
│    Building Conda ─→ `~/.julia/packages/Conda/x5ml4/deps/build.log`
│    Building PyCall → `~/.julia/packages/PyCall/BcTLp/deps/build.log`
│ ┌ Info: PyCall Python version: /Users/rafaelorozco/.julia/adcme/bin/python
│ └ Conda Python version: /Users/rafaelorozco/.julia/adcme/bin/python
│ [ Info:  --------------- (3/6) Looking for TensorFlow Dynamic Libraries --------------- 
│ [ Info:  --------------- (4/6) Preparing Custom Operator Environment --------------- 
│ ERROR: LoadError: IOError: could not spawn `/Users/rafaelorozco/.julia/adcme/bin/unzip -qq /Users/rafaelorozco/.julia/adcme/lib/Libraries/eigen.zip -d /Users/rafaelorozco/.julia/adcme/lib/Libraries`: permission denied (EACCES)
│ Stacktrace:
│  [1] _spawn_primitive(::String, ::Cmd, ::Array{Any,1}) at ./process.jl:99
│  [2] #550 at ./process.jl:112 [inlined]
│  [3] setup_stdios(::Base.var"#550#551"{Cmd}, ::Array{Any,1}) at ./process.jl:196
│  [4] _spawn at ./process.jl:111 [inlined]
│  [5] run(::Cmd; wait::Bool) at ./process.jl:439
│  [6] run(::Cmd) at ./process.jl:438
│  [7] top-level scope at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/build.jl:116
│  [8] include(::String) at ./client.jl:439
│  [9] top-level scope at none:5
│ in expression starting at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/build.jl:108
└ @ Pkg.Operations /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:899

Thank you very much for your attention on this!

rafaelorozco avatar Nov 13 '20 19:11 rafaelorozco

It says

IOError: could not spawn `/Users/rafaelorozco/.julia/adcme/bin/unzip -qq /Users/rafaelorozco/.julia/adcme/lib/Libraries/eigen.zip -d /Users/rafaelorozco/.julia/adcme/lib/Libraries`: permission denied (EACCES)

It looks like you do not have permission to write to /Users/rafaelorozco/.julia/adcme/lib/Libraries, which is strange.

Could you try run the following command in your terminal manually?

/Users/rafaelorozco/.julia/adcme/bin/unzip -qq /Users/rafaelorozco/.julia/adcme/lib/Libraries/eigen.zip -d /Users/rafaelorozco/.julia/adcme/lib/Libraries

If it is successful, you can rebuild ADCME using Pkg.build("ADCME"). Otherwise, you may need to change the permission for the directory /Users/rafaelorozco/.julia/adcme/ and its subdirectories.

kailaix avatar Nov 13 '20 22:11 kailaix

Hello! Thank you for the response! The error I showed was not the proper one (my bad I didn't know that I had to also manually remove package files so I had a file /Users/rafaelorozco/.julia/adcme/bin/unzip that I had added manually but didnt contain anything).

After clean start, Pkg.build("ADCME") gives me this error:

julia> Pkg.build("ADCME")
   Building Conda ─→ `~/.julia/packages/Conda/x5ml4/deps/build.log`
   Building PyCall → `~/.julia/packages/PyCall/BcTLp/deps/build.log`
   Building CMake ─→ `~/.julia/packages/CMake/ULbyn/deps/build.log`
   Building HDF5 ──→ `~/.julia/packages/HDF5/T1b9x/deps/build.log`
   Building FFTW ──→ `~/.julia/packages/FFTW/DMUbN/deps/build.log`
   Building ADCME ─→ `~/.julia/packages/ADCME/XXrZo/deps/build.log`
┌ Error: Error building `ADCME`: 
│ ┌ Warning: Pkg.installed() is deprecated
│ └ @ Pkg /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Pkg.jl:531
│ ┌ Warning: Pkg.installed() is deprecated
│ └ @ Pkg /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Pkg.jl:531
│ [ Info: Your Julia version is 1.4.2, current ADCME version is 0.6.5, ADCME dependencies installation path: /Users/rafaelorozco/.julia/adcme
│ [ Info:  --------------- (1/6) Install Tensorflow Dependencies  --------------- 
│ [ Info: ADCME dependencies have already been installed.
│ [ Info:  --------------- (2/6) Check Python Version  --------------- 
│ ┌ Warning: Pkg.installed() is deprecated
│ └ @ Pkg /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Pkg.jl:531
│    Building Conda ─→ `~/.julia/packages/Conda/x5ml4/deps/build.log`
│    Building PyCall → `~/.julia/packages/PyCall/BcTLp/deps/build.log`
│ ┌ Info: PyCall Python version: /Users/rafaelorozco/.julia/adcme/bin/python
│ └ Conda Python version: /Users/rafaelorozco/.julia/adcme/bin/python
│ [ Info:  --------------- (3/6) Looking for TensorFlow Dynamic Libraries --------------- 
│ [ Info:  --------------- (4/6) Preparing Custom Operator Environment --------------- 
│ [ Info: Downloading dependencies to /Users/rafaelorozco/.julia/adcme/lib/Libraries...
│ ERROR: LoadError: IOError: could not spawn `/Users/rafaelorozco/.julia/adcme/bin/unzip -qq /Users/rafaelorozco/.julia/adcme/lib/Libraries/eigen.zip -d /Users/rafaelorozco/.julia/adcme/lib/Libraries`: no such file or directory (ENOENT)
│ Stacktrace:
│  [1] _spawn_primitive(::String, ::Cmd, ::Array{Any,1}) at ./process.jl:99
│  [2] #550 at ./process.jl:112 [inlined]
│  [3] setup_stdios(::Base.var"#550#551"{Cmd}, ::Array{Any,1}) at ./process.jl:196
│  [4] _spawn at ./process.jl:111 [inlined]
│  [5] run(::Cmd; wait::Bool) at ./process.jl:439
│  [6] run(::Cmd) at ./process.jl:438
│  [7] top-level scope at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/build.jl:116
│  [8] include(::String) at ./client.jl:439
│  [9] top-level scope at none:5
│ in expression starting at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/build.jl:108
└ @ Pkg.Operations /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:899


It seems that there is a file that should be there but isn't. Thank you very much for the help!

rafaelorozco avatar Nov 15 '20 23:11 rafaelorozco

Could you check if /Users/rafaelorozco/.julia/adcme/bin/unzip exists and is valid? It looks like your unzip still does not exist.

kailaix avatar Nov 16 '20 07:11 kailaix

/Users/rafaelorozco/.julia/adcme/bin/unzip does not exist. As far as I understand, I do have unzip available on my system, but it isnt a file in this directory.

rafaelorozco avatar Nov 16 '20 15:11 rafaelorozco

That's strange. It should be installed by ADCME automatically. Or you have an old ADCME installation that interferes with your current version. Could you try either of the two ways:

  1. Remove the directory /Users/rafaelorozco/.julia/adcme/ and rebuild ADCME;
  2. Install unzip on your system and make a symbolic link /Users/rafaelorozco/.julia/adcme/bin/unzip to your unzip binary.

kailaix avatar Nov 16 '20 17:11 kailaix

Hello! Thank you for the advice. That was successful. I can now build the package. But now I have a problem when using ADCME:

julia> using ADCME
2020-11-16 19:55:39.980325: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)to use the following CPU instructions in performance-critical operations:  AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2020-11-16 19:55:39.999786: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x7f8fe42ac860 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-11-16 19:55:39.999832: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
┌ Warning: Cannot load /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/CustomOps/build/libadcme.dylib. Please recompile the shared library by `ADCME.precompile()` for using custom operators.
└ @ ADCME ~/.julia/packages/ADCME/XXrZo/src/ADCME.jl:76

I also get the recommendation to downgrade to julia 1.3 after running doctor()

julia> doctor()
[✘] Julia version

[Reason]
Your Julia version is 1.4.2, and your system is MACOSX. This combination has a compatability issue.


[Instruction]
Downgrade your Julia to ≦1.3

ERROR: BoundsError: attempt to access String
  at index [1:6]
Stacktrace:
 [1] checkbounds at ./strings/basic.jl:194 [inlined]
 [2] getindex(::String, ::UnitRange{Int64}) at ./strings/string.jl:248
 [3] doctor() at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:595
 [4] top-level scope at REPL[2]:1

If I ignore these warning and try the Parameter Inverse Problem example from the github homepage I get these errors:

julia> # Optimization
       sess = Session(); init(sess)
ERROR: MethodError: no method matching run(::PyCall.PyObject, ::Nothing)
Closest candidates are:
  run(::PyCall.PyObject, ::ADCME.NRResult) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:286
  run(::PyCall.PyObject, ::mpi_SparseTensor) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/mpi.jl:498
  run(::Base.AbstractCmd, ::Any...; wait) at process.jl:438
  ...
Stacktrace:
 [1] init(::PyCall.PyObject) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/run.jl:48
 [2] top-level scope at REPL[15]:2

julia> BFGS!(sess, loss)
ERROR: KeyError: key :contrib not found
Stacktrace:
 [1] __getproperty(::PyCall.PyObject, ::Symbol) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/PyCall.jl:307
 [2] getproperty(::PyCall.PyObject, ::Symbol) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/PyCall.jl:312
 [3] ScipyOptimizerInterface(::PyCall.PyObject; method::String, options::Dict{String,Real}, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:57
 [4] BFGS!(::PyCall.PyObject, ::PyCall.PyObject, ::Int64; vars::Array{PyCall.PyObject,1}, callback::Nothing, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:260
 [5] BFGS! at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:221 [inlined] (repeats 2 times)
 [6] top-level scope at REPL[16]:1

julia> println("Estimated b = ", run(sess, b))
ERROR: PyError ($(Expr(:escape, :(ccall(#= /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'RuntimeError'>
RuntimeError('The Session graph is empty.  Add operations to the graph before calling run().')
  File "/opt/miniconda3/lib/python3.7/site-packages/tensorflow/python/client/session.py", line 958, in run
    run_metadata_ptr)
  File "/opt/miniconda3/lib/python3.7/site-packages/tensorflow/python/client/session.py", line 1106, in _run
    raise RuntimeError('The Session graph is empty.  Add operations to the '

Stacktrace:
 [1] pyerr_check(::String, ::Nothing) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:62
 [2] pyerr_check(::String) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:66
 [3] _handle_error(::String) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:83
 [4] macro expansion at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:97 [inlined]
 [5] #110 at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:43 [inlined]
 [6] disable_sigint at ./c.jl:446 [inlined]
 [7] __pycall! at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:42 [inlined]
 [8] _pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject}, ::Int64, ::Ptr{Nothing}) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:29
 [9] _pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject}, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:11
 [10] (::PyCall.PyObject)(::PyCall.PyObject, ::Vararg{PyCall.PyObject,N} where N; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:86
 [11] (::PyCall.PyObject)(::PyCall.PyObject, ::Vararg{PyCall.PyObject,N} where N) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:86
 [12] run(::PyCall.PyObject, ::PyCall.PyObject; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/run.jl:32
 [13] run(::PyCall.PyObject, ::PyCall.PyObject) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/run.jl:28
 [14] top-level scope at REPL[17]:1

Thank you for the ongoing help on this problem! My team and I are excited to use this tool!

rafaelorozco avatar Nov 17 '20 01:11 rafaelorozco

Could you quit Julia and try it again? If it doesn't work, the problem may be because Julia PyCall is not using the Python environment built by ADCME. It happens when you (or some package you installed after ADCME) build PyCall with another Python binary.

You can check using using PyCall; PyCall.libpython; it should be something like /Users/rafaelorozco/.julia/adcme/lib/libpython.so. If not, you can fix this problem by

ENV["PYTHON"] = `/Users/rafaelorozco/.julia/adcme/bin/python`
using Pkg; Pkg.build("PyCall")

Additionally, you get a warning when you start ADCME:

┌ Warning: Cannot load /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/CustomOps/build/libadcme.dylib. Please recompile the shared library by `ADCME.precompile()` for using custom operators.
└ @ ADCME ~/.julia/packages/ADCME/XXrZo/src/ADCME.jl:76

You can fix the problem by using ADCME; ADCME.precompile()


Note: Unfortunately, currently it is kind of challenging to use one Python environment for ADCME and another Python environment for your other Julia packages. Hope this is not a problem for you.

kailaix avatar Nov 17 '20 03:11 kailaix

Hello! Running this:

ENV["PYTHON"] = `/Users/rafaelorozco/.julia/adcme/bin/python`
using Pkg; Pkg.build("PyCall")

does not change the output of PyCall.libpython which is always /Users/rafaelorozco/.julia/conda/3/lib/libpython3.8.dylib

In any case, after setting the environment variable and building PyCall then ADCME seems to be trying to use the system wide conda julia:

julia> using ADCME
ERROR: InitError: PyError (PyImport_ImportModule

The Python package tensorflow could not be imported by pyimport. Usually this means
that you did not install tensorflow in the Python version being used by PyCall.

PyCall is currently configured to use the Julia-specific Python distribution
installed by the Conda.jl package.  To install the tensorflow module, you can
use `pyimport_conda("tensorflow", PKG)`, where PKG is the Anaconda
package the contains the module tensorflow, or alternatively you can use the
Conda package directly (via `using Conda` followed by `Conda.add` etcetera).

Alternatively, if you want to use a different Python distribution on your
system, such as a system-wide Python (as opposed to the Julia-specific Python),
you can re-configure PyCall with that Python.   As explained in the PyCall
documentation, set ENV["PYTHON"] to the path/name of the python executable
you want to use, run Pkg.build("PyCall"), and re-launch Julia.

) <class 'ModuleNotFoundError'>
ModuleNotFoundError("No module named 'tensorflow'")

Stacktrace:
 [1] pyimport(::String) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/PyCall.jl:547
 [2] __init__() at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/ADCME.jl:51
 [3] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:697
 [4] _require_search_from_serialized(::Base.PkgId, ::String) at ./loading.jl:781
 [5] _require(::Base.PkgId) at ./loading.jl:1006
 [6] require(::Base.PkgId) at ./loading.jl:927
 [7] require(::Module, ::Symbol) at ./loading.jl:922
during initialization of module ADCME

As you said, ADCME should be using its own python version, so I think I did something wrong here. Also, the precompile command doesnt seem to run well:

julia> ADCME.precompile()
[ Info: Changed to directory build
CMake Error at CMakeLists.txt:2 (project):
  Running

   '/Users/rafaelorozco/.julia/adcme/bin/ninja' '--version'

  failed with:

   No such file or directory


-- Configuring incomplete, errors occurred!
See also "/Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/CustomOps/build/CMakeFiles/CMakeOutput.log".
ERROR: failed process: Process(setenv(`/Users/rafaelorozco/.julia/packages/CMake/ULbyn/deps/usr/bin/cmake -G Ninja -DCMAKE_MAKE_PROGRAM=/Users/rafaelorozco/.julia/adcme/bin/ninja -DJULIA=/Applications/Julia-1.4.app/Contents/Resources/julia/bin/julia -DCMAKE_C_COMPILER=/Users/rafaelorozco/.julia/adcme/bin/clang -DCMAKE_CXX_COMPILER=/Users/rafaelorozco/.julia/adcme/bin/clang++ '' /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/CustomOps/`,["XPC_FLAGS=0x0", "_CE_M=", "PATH=/opt/miniconda3/bin:/opt/miniconda3/condabin:/usr/local/opt/python/libexec/bin:/opt/local/bin:/opt/local/sbin:/Users/rafaelorozco/adb-fastboot/platform-tools:/usr/bin:/bin:/usr/sbin:/sbin:/Users/rafaelorozco/.local/bin:/usr/local/bin", "CONDA_PROMPT_MODIFIER=(base) ", "PWD=/Users/rafaelorozco", "PYTHON=/opt/miniconda3/bin/python", "DISPLAY=/private/tmp/com.apple.launchd.Si9y08UzKl/org.macosforge.xquartz:0", "XPC_SERVICE_NAME=0", "TERM_PROGRAM=Apple_Terminal", "HDF5_USE_FILE_LOCKING=FALSE"  …  "Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.em3bOZa8si/Render", "_CE_CONDA=", "USER=rafaelorozco", "CONDA_SHLVL=1", "MPLBACKEND=qt5agg", "CONDA_EXE=/opt/miniconda3/bin/conda", "TERM=xterm-256color", "HOME=/Users/rafaelorozco", "TERM_PROGRAM_VERSION=421.2", "OPENBLAS_MAIN_FREE=1"]), ProcessExited(1)) [1]

Stacktrace:
 [1] pipeline_error at ./process.jl:525 [inlined]
 [2] run(::Cmd; wait::Bool) at ./process.jl:440
 [3] run at ./process.jl:438 [inlined]
 [4] cmake(::String; CMAKE_ARGS::String) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:73
 [5] cmake at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:52 [inlined] (repeats 2 times)
 [6] #240 at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:331 [inlined]
 [7] require_cmakecache(::ADCME.var"#240#242", ::String) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/toolchain.jl:342
 [8] require_cmakecache at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/toolchain.jl:320 [inlined]
 [9] precompile(::Bool) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:330
 [10] precompile() at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:318
 [11] top-level scope at REPL[2]:1


Ninja is not present in that folder.

I am not married to using this version of Julia. Would it be easier if I just use Julia 1.3? Thank you for the advice!

rafaelorozco avatar Nov 17 '20 15:11 rafaelorozco

I see. It looks like ADCME is not built from the very beginning. I guess you tried the second approach instead of this one

Remove the directory /Users/rafaelorozco/.julia/adcme/ and rebuild ADCME;

I would suggest you to remove the entire directory /Users/rafaelorozco/.julia/adcme/ and rebuild ADCME, and then ADCME will install all necessary compiler tools and dependencies.

Also, remember to quit Julia and let all your changes take effect (e.g., Pkg.build("PyCall"))

kailaix avatar Nov 17 '20 20:11 kailaix

Hello! Oh my bad for not saying that I attempted that first approach to no avail. I tried it again just now and it also gives the same errors. I really appreciate the ongoing assistance!

rafaelorozco avatar Nov 17 '20 22:11 rafaelorozco

My bad! It should be (quotation marks!)

ENV["PYTHON"] = "/Users/rafaelorozco/.julia/adcme/bin/python"

kailaix avatar Nov 17 '20 22:11 kailaix

Hello, this doesn't change any of the behaviors. I still get the same errors when I try to use the package as in this comment:

Hello! Thank you for the advice. That was successful. I can now build the package. But now I have a problem when using ADCME:

julia> using ADCME
2020-11-16 19:55:39.980325: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)to use the following CPU instructions in performance-critical operations:  AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2020-11-16 19:55:39.999786: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x7f8fe42ac860 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-11-16 19:55:39.999832: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
┌ Warning: Cannot load /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/deps/CustomOps/build/libadcme.dylib. Please recompile the shared library by `ADCME.precompile()` for using custom operators.
└ @ ADCME ~/.julia/packages/ADCME/XXrZo/src/ADCME.jl:76

I also get the recommendation to downgrade to julia 1.3 after running doctor()

julia> doctor()
[✘] Julia version

[Reason]
Your Julia version is 1.4.2, and your system is MACOSX. This combination has a compatability issue.


[Instruction]
Downgrade your Julia to ≦1.3

ERROR: BoundsError: attempt to access String
  at index [1:6]
Stacktrace:
 [1] checkbounds at ./strings/basic.jl:194 [inlined]
 [2] getindex(::String, ::UnitRange{Int64}) at ./strings/string.jl:248
 [3] doctor() at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/extra.jl:595
 [4] top-level scope at REPL[2]:1

If I ignore these warning and try the Parameter Inverse Problem example from the github homepage I get these errors:

julia> # Optimization
       sess = Session(); init(sess)
ERROR: MethodError: no method matching run(::PyCall.PyObject, ::Nothing)
Closest candidates are:
  run(::PyCall.PyObject, ::ADCME.NRResult) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:286
  run(::PyCall.PyObject, ::mpi_SparseTensor) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/mpi.jl:498
  run(::Base.AbstractCmd, ::Any...; wait) at process.jl:438
  ...
Stacktrace:
 [1] init(::PyCall.PyObject) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/run.jl:48
 [2] top-level scope at REPL[15]:2

julia> BFGS!(sess, loss)
ERROR: KeyError: key :contrib not found
Stacktrace:
 [1] __getproperty(::PyCall.PyObject, ::Symbol) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/PyCall.jl:307
 [2] getproperty(::PyCall.PyObject, ::Symbol) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/PyCall.jl:312
 [3] ScipyOptimizerInterface(::PyCall.PyObject; method::String, options::Dict{String,Real}, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:57
 [4] BFGS!(::PyCall.PyObject, ::PyCall.PyObject, ::Int64; vars::Array{PyCall.PyObject,1}, callback::Nothing, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:260
 [5] BFGS! at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/optim.jl:221 [inlined] (repeats 2 times)
 [6] top-level scope at REPL[16]:1

julia> println("Estimated b = ", run(sess, b))
ERROR: PyError ($(Expr(:escape, :(ccall(#= /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'RuntimeError'>
RuntimeError('The Session graph is empty.  Add operations to the graph before calling run().')
  File "/opt/miniconda3/lib/python3.7/site-packages/tensorflow/python/client/session.py", line 958, in run
    run_metadata_ptr)
  File "/opt/miniconda3/lib/python3.7/site-packages/tensorflow/python/client/session.py", line 1106, in _run
    raise RuntimeError('The Session graph is empty.  Add operations to the '

Stacktrace:
 [1] pyerr_check(::String, ::Nothing) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:62
 [2] pyerr_check(::String) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:66
 [3] _handle_error(::String) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:83
 [4] macro expansion at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/exception.jl:97 [inlined]
 [5] #110 at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:43 [inlined]
 [6] disable_sigint at ./c.jl:446 [inlined]
 [7] __pycall! at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:42 [inlined]
 [8] _pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject}, ::Int64, ::Ptr{Nothing}) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:29
 [9] _pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject}, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:11
 [10] (::PyCall.PyObject)(::PyCall.PyObject, ::Vararg{PyCall.PyObject,N} where N; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:86
 [11] (::PyCall.PyObject)(::PyCall.PyObject, ::Vararg{PyCall.PyObject,N} where N) at /Users/rafaelorozco/.julia/packages/PyCall/BcTLp/src/pyfncall.jl:86
 [12] run(::PyCall.PyObject, ::PyCall.PyObject; kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/run.jl:32
 [13] run(::PyCall.PyObject, ::PyCall.PyObject) at /Users/rafaelorozco/.julia/packages/ADCME/XXrZo/src/run.jl:28
 [14] top-level scope at REPL[17]:1

Thank you for the ongoing help on this problem! My team and I are excited to use this tool!

precompile() also still gives the same error. I also want to mention that a colleague has been trying to install ADCME in tandem with me but on julia 1.5. So far we have been having the same errors. Is ADCME more stable on Julia 1.3?

rafaelorozco avatar Nov 18 '20 15:11 rafaelorozco

Hi Kailai,

I am the colleague Rafael mentioned about installing on Julia 1.5. I actually tried both Julia 1.5.0 and 1.4.2 and encountered error in both cases.

If I do precompile, it leads to this error.

julia> ADCME.precompile()
[ Info: Changed to directory build
CMake Error at CMakeLists.txt:2 (project):
  Running

   '/Users/francisyin/.julia/adcme/bin/ninja' '--version'

  failed with:

   No such file or directory


-- Configuring incomplete, errors occurred!
See also "/Users/francisyin/.julia/packages/ADCME/XXrZo/deps/CustomOps/build/CMakeFiles/CMakeOutput.log".
ERROR: failed process: Process(setenv(`/Users/francisyin/.julia/packages/CMake/ULbyn/deps/usr/bin/cmake -G Ninja -DCMAKE_MAKE_PROGRAM=/Users/francisyin/.julia/adcme/bin/ninja -DJULIA=/Applications/Julia-1.4.app/Contents/Resources/julia/bin/julia -DCMAKE_C_COMPILER=/Users/francisyin/.julia/adcme/bin/clang -DCMAKE_CXX_COMPILER=/Users/francisyin/.julia/adcme/bin/clang++ '' /Users/francisyin/.julia/packages/ADCME/XXrZo/deps/CustomOps/`,["XPC_FLAGS=0x0", "_CE_M=", "PATH=/opt/anaconda3/bin:/opt/anaconda3/condabin:/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin", "CONDA_PROMPT_MODIFIER=(base) ", "PWD=/Users/francisyin", "HDF5_USE_FILE_LOCKING=FALSE", "XPC_SERVICE_NAME=0", "TERM_PROGRAM=Apple_Terminal", "CONDA_PYTHON_EXE=/opt/anaconda3/bin/python", "SHELL=/bin/zsh"  …  "SECURITYSESSIONID=186a9", "USER=francisyin", "CONDA_SHLVL=1", "MPLBACKEND=qt5agg", "CONDA_EXE=/opt/anaconda3/bin/conda", "TERM=xterm-256color", "HOME=/Users/francisyin", "TERM_PROGRAM_VERSION=433", "DEVITO_ARCH=gcc-8", "OPENBLAS_MAIN_FREE=1"]), ProcessExited(1)) [1]

Stacktrace:
 [1] pipeline_error at ./process.jl:525 [inlined]
 [2] run(::Cmd; wait::Bool) at ./process.jl:440
 [3] run at ./process.jl:438 [inlined]
 [4] cmake(::String; CMAKE_ARGS::String) at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/extra.jl:73
 [5] cmake at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/extra.jl:52 [inlined] (repeats 2 times)
 [6] #240 at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/extra.jl:331 [inlined]
 [7] require_cmakecache(::ADCME.var"#240#242", ::String) at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/toolchain.jl:342
 [8] require_cmakecache at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/toolchain.jl:320 [inlined]
 [9] precompile(::Bool) at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/extra.jl:330
 [10] precompile() at /Users/francisyin/.julia/packages/ADCME/XXrZo/src/extra.jl:318
 [11] top-level scope at REPL[2]:1

Really appreciate your help!

Francis

ziyiyin97 avatar Nov 18 '20 16:11 ziyiyin97

I tried to reproduce your problem but cannot. Maybe we can schedule an online meeting to resolve the problem? Could you send me an email if you wish? kailaix at hotmail dot com

kailaix avatar Nov 18 '20 18:11 kailaix

Hello! I'm trying to run Pkg.add('ADCME') on windows, but I get some error ERROR: Error building AdFem: WARNING: Method definition size(PyCall.PyObject) in module PyCall at C:\Users\92463.julia\packages\PyCall\BD546\src\PyCall.jl:812 overwritten in module ADCME at C:\Users\92463.julia\packages\ADCME\hCmEo\src\variable.jl:214. ** incremental compilation may be fatally broken for this module **

WARNING: Method definition length(PyCall.PyObject) in module PyCall at C:\Users\92463.julia\packages\PyCall\BD546\src\PyCall.jl:811 overwritten in module ADCME at C:\Users\92463.julia\packages\ADCME\hCmEo\src\variable.jl:238. ** incremental compilation may be fatally broken for this module **

WARNING: Method definition lastindex(PyCall.PyObject) in module PyCall at deprecated.jl:70 overwritten in module ADCME at C:\Users\92463.julia\packages\ADCME\hCmEo\src\variable.jl:454. ** incremental compilation may be fatally broken for this module **

WARNING: Method definition *(PyCall.PyObject, PyCall.PyObject) in module PyCall at C:\Users\92463.julia\packages\PyCall\BD546\src\pyoperators.jl:11 overwritten in module ADCME at C:\Users\92463.julia\packages\ADCME\hCmEo\src\ops.jl:102. ** incremental compilation may be fatally broken for this module **

┌ Warning: Cannot load C:\Users\92463.julia\packages\ADCME\hCmEo\deps\CustomOps\build\adcme.dll. Please recompile the shared library by ADCME.precompile() for using custom operators. └ @ ADCME C:\Users\92463.julia\packages\ADCME\hCmEo\src\ADCME.jl:76 [ Info: Changed to directory C:\Users\92463.julia\adcme\lib\Libraries [ Info: Cloning from https://github.com/ADCMEMarket/Adept-2 to Adept-2... [ Info: Cloned https://github.com/ADCMEMarket/Adept-2 to Adept-2 [ Info: Downloading https://github.com/kailaix/tensorflow-1.15-include/releases/download/v0.1.0/openblas.lib -> C:\Users\92463.julia\adcme\lib\Libraries\lib\openblas.lib ERROR: LoadError: schannel: failed to receive handshake, SSL/TLS connection failed while requesting https://github.com/kailaix/tensorflow-1.15-include/releases/download/v0.1.0/openblas.lib Stacktrace: [1] (::Downloads.var"#9#18"{IOStream, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool})(easy::Downloads.Curl.Easy) @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:369 [2] with_handle(f::Downloads.var"#9#18"{IOStream, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool}, handle::Downloads.Curl.Easy) @ Downloads.Curl C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Curl\Curl.jl:64 [3] #8 @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:311 [inlined] [4] arg_write(f::Downloads.var"#8#17"{Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool}, arg::IOStream) @ ArgTools C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\ArgTools\src\ArgTools.jl:112 [5] #7 @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:310 [inlined] [6] arg_read @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\ArgTools\src\ArgTools.jl:61 [inlined] [7] request(url::String; input::Nothing, output::IOStream, method::Nothing, headers::Vector{Pair{String, String}}, timeout::Float64, progress::Nothing, verbose::Bool, throw::Bool, downloader::Nothing) @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:309 [8] (::Downloads.var"#3#4"{Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Nothing, String})(output::IOStream) @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:222 [9] open(f::Downloads.var"#3#4"{Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Nothing, String}, args::String; kwargs::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:write,), Tuple{Bool}}}) @ Base .\io.jl:330 [10] arg_write(f::Function, arg::String) @ ArgTools C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\ArgTools\src\ArgTools.jl:86 [11] #download#2 @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:221 [inlined] [12] download(url::String, output::String) @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:221 [13] #invokelatest#2 @ .\essentials.jl:708 [inlined] [14] invokelatest @ .\essentials.jl:706 [inlined] [15] do_download @ .\download.jl:33 [inlined] [16] download @ .\download.jl:28 [inlined] [17] (::ADCME.var"#459#460"{String, String})() @ ADCME C:\Users\92463.julia\packages\ADCME\hCmEo\src\toolchain.jl:37 [18] require_file(f::ADCME.var"#459#460"{String, String}, file::String) @ ADCME C:\Users\92463.julia\packages\ADCME\hCmEo\src\toolchain.jl:101 [19] http_file @ C:\Users\92463.julia\packages\ADCME\hCmEo\src\toolchain.jl:35 [inlined] [20] install_blas(blas_binary::Bool) @ ADCME C:\Users\92463.julia\packages\ADCME\hCmEo\src\install.jl:12 [21] install_adept(; blas_binary::Bool) @ ADCME C:\Users\92463.julia\packages\ADCME\hCmEo\src\install.jl:52 [22] install_adept() @ ADCME C:\Users\92463.julia\packages\ADCME\hCmEo\src\install.jl:49 [23] top-level scope @ C:\Users\92463.julia\packages\AdFem\UvDr4\deps\build.jl:3 [24] include(fname::String) @ Base.MainInclude .\client.jl:444 [25] top-level scope @ none:5 in expression starting at C:\Users\92463.julia\packages\AdFem\UvDr4\deps\build.jl:3 Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Types.jl:55 [2] (::Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec})() @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1048 [3] withenv(::Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, ::Pair{String, String}, ::Vararg{Pair{String, B} where B, N} where N) @ Base .\env.jl:161 [4] (::Pkg.Operations.var"#109#113"{String, Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.PackageSpec})() @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1546 [5] with_temp_env(fn::Pkg.Operations.var"#109#113"{String, Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.PackageSpec}, temp_env::String) @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1448 [6] (::Pkg.Operations.var"#108#112"{Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String})(tmp::String) @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1521 [7] mktempdir(fn::Pkg.Operations.var"#108#112"{Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String}, parent::String; prefix::String) @ Base.Filesystem .\file.jl:729 [8] mktempdir(fn::Function, parent::String) (repeats 2 times) @ Base.Filesystem .\file.jl:727 [9] sandbox(fn::Function, ctx::Pkg.Types.Context, target::Pkg.Types.PackageSpec, target_path::String, sandbox_path::String, sandbox_project_override::Pkg.Types.Project) @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1487 [10] build_versions(ctx::Pkg.Types.Context, uuids::Vector{Base.UUID}; verbose::Bool) @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1029 [11] build_versions @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:956 [inlined] [12] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}, new_git::Vector{Base.UUID}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform) @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1245 [13] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, kwargs::Base.Iterators.Pairs{Symbol, Base.TTY, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.TTY}}}) @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:204 [14] add(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:80 [15] add(pkgs::Vector{Pkg.Types.PackageSpec}) @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:78 [16] #add#23 @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:76 [inlined] [17] add @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:76 [inlined] [18] #add#22 @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:75 [inlined] [19] add(pkg::String) @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:75 [20] top-level scope @ REPL[4]:1

Could you help me with this? Thank you very much

mfh-github avatar Aug 05 '21 02:08 mfh-github