# Unsatisfiable requirement for CUDAnative

**URL:** <https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878>\
**Category:** New to Julia\
**Created:** [December 15, 2020, 3:31pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878 "2020-12-15T15:31:07Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [December 15, 2020, 3:31pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878/1 "2020-12-15T15:31:07Z")

</div>

I am getting this error when installing CUDAnative. Any idea on how to solve these dependencies?

```julia
(@v1.5) pkg> add CUDAnative
   Updating registry at `~/.julia/registries/General`
######################################################################## 100,0%
  Resolving package versions...
ERROR: Unsatisfiable requirements detected for package LLVM [929cbde3]:
 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, 3.1.0, 3.2.0, 3.3.0, 3.4.0, 3.5.0-3.5.1] or uninstalled

```

> **Complete log**
>
> ```julia
> (@v1.5) pkg> add CUDAnative
> Updating registry at `~/.julia/registries/General`
> ######################################################################## 100,0%
> Resolving package versions...
> ERROR: Unsatisfiable requirements detected for package LLVM [929cbde3]:
> 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, 3.1.0, 3.2.0, 3.3.0, 3.4.0, 3.5.0-3.5.1] or uninstalled
> ├─restricted by compatibility requirements with CUDA [052768ef] to versions: [1.5.0-1.5.2, 1.6.0, 1.7.0, 2.0.0, 3.0.0, 3.1.0, 3.2.0, 3.3.0, 3.4.0, 3.5.0-3.5.1]
> │ └─CUDA [052768ef] log:
> │ ├─possible versions are: [0.1.0, 1.0.0-1.0.2, 1.1.0, 1.2.0-1.2.1, 1.3.0-1.3.3, 2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0] or uninstalled
> │ ├─restricted to versions * by an explicit requirement, leaving only versions [0.1.0, 1.0.0-1.0.2, 1.1.0, 1.2.0-1.2.1, 1.3.0-1.3.3, 2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0]
> │ ├─restricted by julia compatibility requirements to versions: [1.0.0-1.0.2, 1.1.0, 1.2.0-1.2.1, 1.3.0-1.3.3, 2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0] or uninstalled, leaving only versions: [1.0.0-1.0.2, 1.1.0, 1.2.0-1.2.1, 1.3.0-1.3.3, 2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0]
> │ └─restricted by compatibility requirements with FoldsCUDA [6cd66ae4] to versions: [2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0]
> │ └─FoldsCUDA [6cd66ae4] log:
> │ ├─possible versions are: 0.1.0-0.1.1 or uninstalled
> │ └─restricted to versions * by an explicit requirement, leaving only versions 0.1.0-0.1.1
> ├─restricted by compatibility requirements with CUDAnative [be33ccc6] to versions: [0.9.6-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], leaving only versions: [1.5.0-1.5.2, 1.6.0, 1.7.0]
> │ └─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 Adapt [79e6a3ab] to versions: [0.7.0, 0.8.0-0.8.10, 0.9.0-0.9.1, 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, leaving only versions: [0.7.0, 0.8.0-0.8.10, 0.9.0-0.9.1, 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]
> │ │ └─Adapt [79e6a3ab] log:
> │ │ ├─possible versions are: [0.3.0-0.3.1, 0.4.0-0.4.2, 1.0.0-1.0.1, 1.1.0, 2.0.0-2.0.2, 2.1.0, 2.2.0, 2.3.0] or uninstalled
> │ │ ├─restricted by compatibility requirements with CUDA [052768ef] to versions: [1.0.0-1.0.1, 1.1.0, 2.0.0-2.0.2, 2.1.0, 2.2.0, 2.3.0]
> │ │ │ └─CUDA [052768ef] log: see above
> │ │ ├─restricted by compatibility requirements with GPUArrays [0c68f7d7] to versions: [2.0.0-2.0.2, 2.1.0, 2.2.0, 2.3.0]
> │ │ │ └─GPUArrays [0c68f7d7] log:
> │ │ │ ├─possible versions are: [0.3.0-0.3.4, 0.4.0-0.4.2, 0.5.0, 0.6.0-0.6.1, 0.7.0-0.7.2, 1.0.0-1.0.4, 2.0.0-2.0.1, 3.0.0-3.0.1, 3.1.0, 3.2.0, 3.3.0, 3.4.0-3.4.1, 4.0.0-4.0.1, 5.0.0, 5.1.0, 5.2.0-5.2.1, 6.0.0-6.0.1, 6.1.0-6.1.2] or uninstalled
> │ │ │ ├─restricted to versions * by an explicit requirement, leaving only versions [0.3.0-0.3.4, 0.4.0-0.4.2, 0.5.0, 0.6.0-0.6.1, 0.7.0-0.7.2, 1.0.0-1.0.4, 2.0.0-2.0.1, 3.0.0-3.0.1, 3.1.0, 3.2.0, 3.3.0, 3.4.0-3.4.1, 4.0.0-4.0.1, 5.0.0, 5.1.0, 5.2.0-5.2.1, 6.0.0-6.0.1, 6.1.0-6.1.2]
> │ │ │ ├─restricted by compatibility requirements with CUDA [052768ef] to versions: [3.4.0-3.4.1, 4.0.0-4.0.1, 5.0.0, 5.1.0, 5.2.0-5.2.1, 6.0.1, 6.1.0-6.1.2]
> │ │ │ │ └─CUDA [052768ef] log: see above
> │ │ │ └─restricted by compatibility requirements with FoldsCUDA [6cd66ae4] to versions: [6.0.0-6.0.1, 6.1.0-6.1.2], leaving only versions: [6.0.1, 6.1.0-6.1.2]
> │ │ │ └─FoldsCUDA [6cd66ae4] log: see above
> │ │ └─restricted by compatibility requirements with CUDA [052768ef] to versions: [2.2.0, 2.3.0]
> │ │ └─CUDA [052768ef] log: see above
> │ └─restricted by compatibility requirements with GPUCompiler [61eb1bfa] to 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] or uninstalled, leaving only versions: [0.7.0, 0.8.0-0.8.10, 0.9.0-0.9.1, 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]
> │ └─GPUCompiler [61eb1bfa] log:
> │ ├─possible versions are: [0.1.0, 0.2.0, 0.3.0, 0.4.0-0.4.1, 0.5.0-0.5.5, 0.6.0-0.6.1, 0.7.0-0.7.3, 0.8.0-0.8.3, 0.9.0] or uninstalled
> │ ├─restricted by compatibility requirements with CUDA [052768ef] to versions: [0.3.0, 0.4.0-0.4.1, 0.5.0-0.5.5, 0.6.0-0.6.1, 0.7.0-0.7.3, 0.8.1-0.8.3]
> │ │ └─CUDA [052768ef] log: see above
> │ └─restricted by compatibility requirements with CUDA [052768ef] to versions: [0.7.0-0.7.3, 0.8.1-0.8.3]
> │ └─CUDA [052768ef] log: see above
> └─restricted by compatibility requirements with CUDA [052768ef] to versions: [3.0.0, 3.1.0, 3.2.0, 3.3.0, 3.4.0, 3.5.0-3.5.1] — no versions left
> └─CUDA [052768ef] log: see above
> 
> ```

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [December 15, 2020, 5:04pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878/2 "2020-12-15T17:04:50Z")

</div>

Noticed now that CUDAnative was deprecated in favor of CUDA. I have to use an older Julia version or update the package I am testing.

Would it be possible to throw an error message informing the user that such package is deprecated for that version in favor of something else, instead of that dependency error?

---

<div class="post-metadata">

**Author:** ![maleadt](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/maleadt/32/10097_2.png) [@maleadt](https://discourse.julialang.org/u/maleadt)\
**Post date:** [December 15, 2020, 5:15pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878/3 "2020-12-15T17:15:13Z")

</div>

The dependency issue is unrelated to the deprecation; the packages should just still work on Julia 1.5 or below. So adding deprecation messages there is going to be bad for people who expect things to keep working.

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [December 15, 2020, 5:17pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878/4 "2020-12-15T17:17:25Z")

</div>

But should the package work in Julia 1.5.3?

Because I installed CUDA just fine, but that one I could not.

---

<div class="post-metadata">

**Author:** ![maleadt](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/maleadt/32/10097_2.png) [@maleadt](https://discourse.julialang.org/u/maleadt)\
**Post date:** [December 15, 2020, 5:30pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878/5 "2020-12-15T17:30:48Z")

</div>

CUDAnative works just fine on Julia 1.5, but you can’t have it installed together with CUDA.jl (because of conflicting requirements on dependencies).

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [December 15, 2020, 5:44pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirement-for-cudanative/51878/6 "2020-12-15T17:44:10Z")

</div>

Thanks. I do not remember having it installed, but it is not impossible that I have done it some day. Anyway, CUDA installed without errors and changing the code to use that instead of CUDAnative and CuArrays was simple. Thank you.
