1# LibCEED.jl: Julia Interface for [libCEED](https://github.com/CEED/libCEED) 2 3Please see the [LibCEED.jl 4documentation](http://ceed.exascaleproject.org/libCEED-julia-docs/dev/) for 5usage and API documentation. 6 7## Installation 8 9The LibCEED.jl package can be installed with Julia's package manager by running 10`] add LibCEED`. This will automatically install a pre-built binary of the 11libCEED library. If you require features of a specific build of libCEED (e.g. 12CUDA/GPU support, specific compiler flags, etc.) then you should compile your 13own version of the libCEED library, and configure LibCEED.jl to use this binary 14as described in the [Configuring LibCEED.jl](#configuring-libceedjl) section. 15 16**Warning:** the pre-built libCEED binaries do not support CUDA backends 17 18The pre-built binaries automatically installed by LibCEED.jl (through the 19[libCEED_jll](https://juliahub.com/ui/Packages/libCEED_jll/LB2fn) package) are 20not built with CUDA support. If you want to run libCEED on the GPU, you will 21have to build libCEED from source and configure LibCEED.jl as described in the 22[Configuring LibCEED.jl](#configuring-libceedjl) section. 23 24### Configuring LibCEED.jl 25 26By default, LibCEED.jl will use the pre-built libCEED binaries provided by the 27[libCEED_jll](https://juliahub.com/ui/Packages/libCEED_jll/LB2fn) package. If 28you wish to use a different libCEED binary (e.g. one built from source), 29LibCEED.jl can be configured using Julia's _preferences_ mechanism. Note that 30this preference will be set for the currently active Julia environment, and can 31be different between different environments. The Julia session must be restarted 32for changes to take effect. 33 34```julia 35julia> using LibCEED 36julia> set_libceed_path!("/path/to/libceed.so") 37[ Info: Setting the libCEED library path to /path/to/libceed.so. 38[ Info: Restart the Julia session for changes to take effect. 39``` 40 41See [Preferences.jl](https://github.com/JuliaPackaging/Preferences.jl) for more 42information. 43