Cannot install DifferentialEquations package to Julia - julia

When I try to install DifferentialEquations package, I face the following problem:
ERROR: Unsatisfiable requirements detected for package DimensionalPlotRecipes [c619ae07]:
DimensionalPlotRecipes [c619ae07] log:
├─possible versions are: [0.1.0-0.1.1, 0.2.0, 1.0.0] or uninstalled
├─restricted by compatibility requirements with RecipesBase [3cdcf5f2] to versions: uninstalled
│ └─RecipesBase [3cdcf5f2] log:
│ ├─possible versions are: [0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0] or uninstalled
│ └─restricted to versions 0.8.0 by an explicit requirement, leaving only versions 0.8.0
└─restricted by compatibility requirements with DifferentialEquations [0c46a032] to versions: [0.1.0-0.1.1, 0.2.0, 1.0.0] — no versions left
└─DifferentialEquations [0c46a032] log:
├─possible versions are: [5.0.0, 5.1.0, 5.2.0-5.2.1, 5.3.0-5.3.1, 6.0.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 6.6.0, 6.7.0, 6.8.0, 6.9.0, 6.10.0-6.10.1] or uninstalled
└─restricted to versions * by an explicit requirement, leaving only versions [5.0.0, 5.1.0, 5.2.0-5.2.1, 5.3.0-5.3.1, 6.0.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 6.6.0, 6.7.0, 6.8.0, 6.9.0, 6.10.0-6.10.1]
There are installed packages:
[a93c6f00] DataFrames v0.20.0
[7073ff75] IJulia v1.21.1
[91a5bcdd] Plots v0.29.0
[d330b81b] PyPlot v2.8.2
[3cdcf5f2] RecipesBase v0.8.0
Julia version is 1.3.1 and operating system is Windows 10.
Any suggestions?

The first comment helped a lot!
First, I tried to remove RecipesBase, but it did not help, because it founded unsatisfiable requirements with this package in Plots.
Next, I remove Plots and then installed DifferentialEquations successfully.
Installation of Plots (in the end) downgraded some other packages. Everything works fine now, but when I run using DifferentialEquations in Jupyter there are a lot of warnings about the precompilation. This is the first one:
┌ Warning: Module RecipesBase with build ID 1818350963268401 is missing from the cache.
│ This may mean RecipesBase [3cdcf5f2-1ef4-517c-9805-6587b60abb01] does not support precompilation but is imported by a module that does.
└ # Base loading.jl:1011
Anyway, both packages work.

Related

How to install the latest version of Flux.jl?

I am trying to install the latest version of Flux.jl with Julia 1.6. When I do add Flux, it adds version Flux v0.8.3 but looking at GitHub, it seems the newest release is version 0.12.x. I have the following packages in my env:
(#v1.6) pkg> st
Status `~/.julia/environments/v1.6/Project.toml`
[5ae59095] Colors v0.9.6
[8f4d0f93] Conda v1.5.2
[7876af07] Example v0.5.3
[587475ba] Flux v0.8.3
[7073ff75] IJulia v1.23.2
[91a5bcdd] Plots v1.0.14
I tried removing Flux and re-adding it already. I also tried:
(#v1.6) pkg> up Flux
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Updating registry at `~/.julia/registries/JuliaPOMDP`
Updating git-repo `https://github.com/JuliaPOMDP/Registry`
No Changes to `~/.julia/environments/v1.6/Project.toml`
No Changes to `~/.julia/environments/v1.6/Manifest.toml`
and I tried adding the specific version I wanted:
(#v1.6) pkg> add Flux#v0.12.4
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package CodecZlib [944b1d66]:
CodecZlib [944b1d66] log:
├─possible versions are: 0.4.4-0.7.0 or uninstalled
├─restricted by compatibility requirements with StackOverflow [1a8df32f] to versions: 0.6.0
│ └─StackOverflow [1a8df32f] log:
│ ├─possible versions are: 0.1.0-0.1.2 or uninstalled
│ └─restricted to versions * by an explicit requirement, leaving only versions 0.1.0-0.1.2
└─restricted by compatibility requirements with Flux [587475ba] to versions: 0.7.0 — no versions left
└─Flux [587475ba] log:
├─possible versions are: 0.4.1-0.12.4 or uninstalled
└─restricted to versions 0.12.4 by an explicit requirement, leaving only versions 0.12.4
which resulted in the error above.
Somehow one of those other packages listed above was causing the Flux version to be upper bounded at v0.8.3 (I am guessing Conda but am not sure). By removing all the packages besides IJulia, I was able to do an up Flux and have it go to [587475ba] ↑ Flux v0.8.3 ⇒ v0.12.4.

Fail to install CUDA, Flux, CuArrays etc, pls advise - Julia packages

I am new to Julia, when trying to add CUDA, comes the error as following.
It seems meaning the CuArrays is not in right condition, so I add the CuArrays from the github, then it comes another error about Adapt.
When adding Adapt, it seems fine, but when rolling back, the Adapt issue comes again.
Just like rabbit holes in Alice's dream, I am stucked here and don't know what to do to make it work.
Please advise, Thanks,
BTW, the CUDA path is set.
OS:Win10
JuliaPro 1.5.0
GPU: NVIDIA MX150
CUDA.jl
(#JuliaPro_v1.5.0-1) pkg> add https://github.com/JuliaGPU/CUDA.jl
Updating git-repo `https://github.com/JuliaGPU/CUDA.jl`
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package CUDAnative [be33ccc6]:
CUDAnative [be33ccc6] log:
├─possible versions are: [0.7.0, 0.8.0-0.8.10, 0.9.0-0.9.1, 0.10.0-0.10.1, 1.0.0-1.0.1, 2.0.0-2.0.1, 2.1.0-2.1.3, 2.2.0-2.2.1, 2.3.0-2.3.1, 2.4.0, 2.5.0-2.5.5, 2.6.0, 2.7.0, 2.8.0-2.8.1, 2.9.0-2.9.1, 2.10.0-2.10.2, 3.0.0-3.0.4, 3.1.0, 3.2.0] or uninstalled
├─restricted to versions * by an explicit requirement, leaving only versions [0.7.0, 0.8.0-0.8.10, 0.9.0-0.9.1, 0.10.0-0.10.1, 1.0.0-1.0.1, 2.0.0-2.0.1, 2.1.0-2.1.3, 2.2.0-2.2.1, 2.3.0-2.3.1, 2.4.0, 2.5.0-2.5.5, 2.6.0, 2.7.0, 2.8.0-2.8.1, 2.9.0-2.9.1, 2.10.0-2.10.2, 3.0.0-3.0.4, 3.1.0, 3.2.0]
└─restricted by compatibility requirements with LLVM [929cbde3] to versions: uninstalled — no versions left
└─LLVM [929cbde3] log:
├─possible versions are: [0.9.0-0.9.15, 1.0.0, 1.1.0-1.1.1, 1.2.0, 1.3.0-1.3.4, 1.4.0-1.4.1, 1.5.0-1.5.2, 1.6.0, 1.7.0, 2.0.0, 3.0.0] or uninstalled
└─restricted to versions 3 by CUDA [052768ef], leaving only versions 3.0.0
└─CUDA [052768ef] log:
├─possible versions are: 1.3.0 or uninstalled
└─CUDA [052768ef] is fixed to version 1.3.0
CUDAnative
(#JuliaPro_v1.5.0-1) pkg> add https://github.com/JuliaGPU/CUDAnative.jl
Updating git-repo `https://github.com/JuliaGPU/CUDAnative.jl`
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package Adapt [79e6a3ab]:
Adapt [79e6a3ab] log:
├─possible versions are: 2.3.0 or uninstalled
├─restricted to versions [0.4, 1] by CUDAnative [be33ccc6] — no versions left
│ └─CUDAnative [be33ccc6] log:
│ ├─possible versions are: 3.1.0 or uninstalled
│ └─CUDAnative [be33ccc6] is fixed to version 3.1.0
└─Adapt [79e6a3ab] is fixed to version 2.3.0
Adapt
(#JuliaPro_v1.5.0-1) pkg> add https://github.com/JuliaGPU/Adapt.jl
Updating git-repo `https://github.com/JuliaGPU/Adapt.jl`
Resolving package versions...
No Changes to `C:\Users\eric1\.julia\environments\JuliaPro_v1.5.0-1\Project.toml`
No Changes to `C:\Users\eric1\.julia\environments\JuliaPro_v1.5.0-1\Manifest.toml`
You should be installing packages:
(#JuliaPro_v1.5.0-1) pkg> add CUDA
If you are doing instead add https://github.com/JuliaGPU/CUDA.jl you are installing the latest development version (master branch) from the repository.
Since it is a development (current-state-of-source-code) version quite likely something might not work.
Now, I recommend you to remove all those dev package versions that you have installed (so run rm package manager commad) and then reinstall their release versions rather than dev versions.
There is a good change that after that you will not have a dependency clash.

How to use julia's PackageCompiler to build a quick launch environment for PlotStats?

I want to use 'DataFrames,CSV,StatsPlots' packages without waiting time after reboot machine, I'm trying to use PackageCompiler, but the README or help is hard to understand.
using using PackageCompiler
syso, sys = compile_incremental(:DataFrames,:CSV,:StatsPlots)
Well, I'm afraid to destroy the system image, so, at first, I don't use the 'force=true' option. It shows error messages:
...
Resolving package versions...
ERROR: LoadError: Unsatisfiable requirements detected for package WinRPM [c17dfb99]:
WinRPM [c17dfb99] log:
├─possible versions are: [0.3.3, 0.4.0-0.4.3] or uninstalled
├─restricted by compatibility requirements with PackageCompiler [9b87118b] to versions: [0.3.3, 0.4.0-0.4.3]
│ └─PackageCompiler [9b87118b] log:
│ ├─possible versions are: [0.5.0-0.5.1, 0.6.0-0.6.5] or uninstalled
│ └─restricted to versions * by an explicit requirement, leaving only versions [0.5.0-0.5.1, 0.6.0-0.6.5]
├─restricted by compatibility requirements with Compat [34da2185] to versions: 0.4.3 or uninstalled, leaving only versions: 0.4.3
│ └─Compat [34da2185] log:
│ ├─possible versions are: [1.0.0-1.0.1, 1.1.0, 1.2.0, 1.3.0, 1.4.0, 1.5.0-1.5.1, 2.0.0, 2.1.0, 2.2.0, 3.0.0, 3.1.0, 3.2.0] or uninstalled
│ └─restricted to versions 3.2.0 by an explicit requirement, leaving only versions 3.2.0
└─restricted by compatibility requirements with HTTPClient [0862f596] to versions: uninstalled — no versions left
└─HTTPClient [0862f596] log:
├─possible versions are: 0.2.1 or uninstalled
└─restricted by compatibility requirements with Compat [34da2185] to versions: uninstalled
└─Compat [34da2185] log: see above
It seems workable by PackageCompilerX. At first, the package's version is very sensitive, it require correct version to let everything work.
Here are two of my testing environment for julia 1.3.1
debian: apt -t unstable install julia libjulia-dev
archlinux: pacman -S julia
check Julia's version(PackageCompilerX only work after 1.3.1)
julia> versioninfo()
Julia Version 1.3.1
Platform Info:
OS: Linux (x86_64-linux-gnu)
CPU: Intel(R) Xeon(R) CPU # 2.20GHz
Add PackageCompilerX and all package which you want to plot to repository
pkg> add https://github.com/KristofferC/PackageCompilerX.jl
pkg> status
Status `~/.julia/environments/v1.3/Project.toml`
...
Copy system's Project.toml to current directory for customize your development environment, use editor(here vim) to remove some package which can't compile or not required.
shell> rm Project.toml
shell> cp ~/.julia/environments/v1.3/Project.toml .
shell> vim Project.toml
activate local package environment
julia> using PackageCompilerX
pkg> activate .
pkg> status # double check all package which you want have installed
Status `~/prj/julia/Project.toml`
[336ed68f] CSV v0.5.22
[a93c6f00] DataFrames v0.20.0
...
generated sybmol array automatically in julia prompt
s=split(read("Project.toml", String),"\n")
pkgs=Symbol[]
for i in s
if (length(i) > 0) && !(i[1] in ['[','#'])
push!(pkgs, Symbol(split(i," ")[1]))
end
end
show pkgs
julia> pkgs
10-element Array{Symbol,1}:
:CSV
:DataFrames
...
compile it and output to "dev.so" by
julia> create_sysimage(pkgs, sysimage_path="dev.so")
exit julia, and re-launch julia by
julia -J dev.so
Benchmark these two launch method and result:
time julia -q -e 'using Plots,UnicodePlots; unicodeplots(); display(plot(sin))'
# result: 35.175s
time julia -J dev.so -q -e 'using Plots,UnicodePlots; unicodeplots(); display(plot(sin))'
# result: 15.2365s

Error "Unsatisfiable requirements detected for package Blink" in installation

I am trying to install Blink and getting the following message.
(v1.0) pkg> add Blink
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package Blink [ad839575]:
Blink [ad839575] log:
├─possible versions are: [0.1.0-0.1.5, 0.2.0-0.2.1, 0.3.0-0.3.5, 0.4.0-0.4.4, 0.5.0-0.5.4, 0.6.0-0.6.2, 0.7.0, 0.8.0-0.8.1, 0.9.0] or uninstalled
├─restricted to versions * by an explicit requirement, leaving only versions [0.1.0-0.1.5, 0.2.0-0.2.1, 0.3.0-0.3.5, 0.4.0-0.4.4, 0.5.0-0.5.4, 0.6.0-0.6.2, 0.7.0, 0.8.0-0.8.1, 0.9.0]
├─restricted by julia compatibility requirements to versions: [0.7.0, 0.8.0-0.8.1, 0.9.0] or uninstalled, leaving only versions: [0.7.0, 0.8.0-0.8.1, 0.9.0]
├─restricted by compatibility requirements with HttpServer [58cfbd8c] to versions: [0.1.0-0.1.5, 0.8.0-0.8.1, 0.9.0] or uninstalled, leaving only versions: [0.8.0-0.8.1, 0.9.0]
│ └─HttpServer [58cfbd8c] log:
│ ├─possible versions are: [0.0.1-0.0.14, 0.1.0-0.1.7, 0.2.0, 0.3.0-0.3.1] or uninstalled
│ └─restricted by julia compatibility requirements to versions: uninstalled
└─restricted by compatibility requirements with WebSockets [104b5d7c] to versions: 0.1.0-0.1.5 or uninstalled — no versions left
└─WebSockets [104b5d7c] log:
├─possible versions are: [0.0.1-0.0.6, 0.1.0-0.1.2, 0.2.0-0.2.3, 0.3.0, 0.4.0, 0.5.0, 1.0.0-1.0.3, 1.1.0-1.1.1, 1.2.0] or uninstalled
├─restricted by compatibility requirements with HTTP [cd3eb016] to versions: [0.0.1-0.0.6, 0.1.0-0.1.2, 0.2.0-0.2.3, 0.3.0, 0.4.0, 0.5.0] or uninstalled
│ └─HTTP [cd3eb016] log:
│ ├─possible versions are: [0.0.1-0.0.2, 0.4.0-0.4.3, 0.5.0, 0.5.2-0.5.5, 0.5.7, 0.6.0-0.6.14, 0.7.0-0.7.1, 0.8.0] or uninstalled
│ └─restricted to versions 0.8.0 by an explicit requirement, leaving only versions 0.8.0
└─restricted by julia compatibility requirements to versions: [1.0.0-1.0.3, 1.1.0-1.1.1, 1.2.0] or uninstalled, leaving only versions: uninstalled
I am not sure how to decipher, given the following packages installed.
(v1.0) pkg> status
Status `~/.julia/environments/v1.0/Project.toml`
[c52e3926] Atom v0.7.6
[336ed68f] CSV v0.4.3
[a93c6f00] DataFrames v0.17.1
[cd3eb016] HTTP v0.8.0
[0862f596] HTTPClient v0.2.1
[7073ff75] IJulia v1.16.0
[682c06a0] JSON v0.20.0
[e5e0dc1b] Juno v0.5.4
[91a5bcdd] Plots v0.23.0
[f3b207a7] StatsPlots v0.10.1
[ddb6d928] YAML v0.3.2
[ade2ca70] Dates
Do I need to install HTTPServer and Websockets packages?
HTTP.jl version is v0.8.0 and it should meet requirement, no?
julia> versioninfo()
Julia Version 1.0.3
Commit 099e826241 (2018-12-18 01:34 UTC)
Platform Info:
OS: Linux (x86_64-pc-linux-gnu)
CPU: Intel(R) Core(TM) i5-2520M CPU # 2.50GHz
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-6.0.0 (ORCJIT, sandybridge)
Environment:
JULIA_EDITOR = atom -a
JULIA_NUM_THREADS = 2

GLText Package in Julia 1.0

When I try to install various packages in Julia 1.0 I get an error regarding the GLText package:
(v1.0) pkg> add Makie
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package GLText [02a96ca5]:
GLText [02a96ca5] log:
├─possible versions are: 0.0.1-0.0.4 or uninstalled
├─restricted by compatibility requirements with GLPlot [9bedddac] to versions:
0.0.1-0.0.4
│ └─GLPlot [9bedddac] log:
│ ├─possible versions are: 0.0.2-0.0.5 or uninstalled
│ └─restricted to versions * by an explicit requirement, leaving only versions 0.0.2-0.0.5
└─restricted by julia compatibility requirements to versions: uninstalled — no versions left
I am working on macOS Sierra
This error message indicates that there are no available versions of the package which have been certified by the package author as compatible with Julia 0.7 (or 1.0). GLText and its successor GLVisualize are not currently installable with the latest Julia. It might be necessary to install Julia 0.6 if you must use that package.

Resources