# Why is source build Julia required to use GPU packages

**URL:** <https://discourse.julialang.org/t/why-is-source-build-julia-required-to-use-gpu-packages/9747>\
**Category:** GPU\
**Created:** [March 15, 2018, 9:18pm UTC](https://discourse.julialang.org/t/why-is-source-build-julia-required-to-use-gpu-packages/9747 "2018-03-15T21:18:55Z")\
**Posts on this page:** 1\
**Showing post:** 2

<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:** [March 15, 2018, 9:23pm UTC](https://discourse.julialang.org/t/why-is-source-build-julia-required-to-use-gpu-packages/9747/2 "2018-03-15T21:23:17Z")

</div>

CUDAnative.jl itself doesn’t require a source build, but its LLVM.jl dependency does, because of [LLVM C API extensions](https://github.com/maleadt/LLVM.jl/tree/release-0.6/deps/llvm-extra) that _need_ to be built by exactly the same compiler as the one building LLVM (for ABI compatibility reasons). However, on 0.7 we’re building [these API extensions](https://github.com/JuliaLang/julia/blob/master/src/llvm-api.cpp) as part of Julia itself, so you won’t need a source build anymore 🙂 With nightly builds, this should work already, but not all packages are ready to be used with 0.7 yet.

---

_[View the full topic](https://discourse.julialang.org/t/why-is-source-build-julia-required-to-use-gpu-packages/9747)._
