ADCME.jl
ADCME.jl copied to clipboard
Error when building Pkg on Julia 1.4
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!
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.
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!
Could you check if /Users/rafaelorozco/.julia/adcme/bin/unzip
exists and is valid? It looks like your unzip
still does not exist.
/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.
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:
- Remove the directory
/Users/rafaelorozco/.julia/adcme/
and rebuild ADCME; - Install
unzip
on your system and make a symbolic link/Users/rafaelorozco/.julia/adcme/bin/unzip
to yourunzip
binary.
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!
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.
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!
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")
)
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!
My bad! It should be (quotation marks!)
ENV["PYTHON"] = "/Users/rafaelorozco/.julia/adcme/bin/python"
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?
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
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
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