\label{doc_INSTALL_md_md_doc_INSTALL}%
\Hypertarget{doc_INSTALL_md_md_doc_INSTALL}%
 \hypertarget{doc_INSTALL_md_autotoc_md2727}{}\doxysection{Status}\label{doc_INSTALL_md_autotoc_md2727}
The graph below shows an (incomplete) list of available packages for Elektra.

\href{https://repology.org/metapackage/elektra/versions}{\texttt{ }}\hypertarget{doc_INSTALL_md_autotoc_md2728}{}\doxysection{Linux}\label{doc_INSTALL_md_autotoc_md2728}
For the following Linux distributions and package managers 0.\+9 packages are available\+:


\begin{DoxyItemize}
\item \href{https://aur.archlinux.org/packages/elektra/}{\texttt{ Arch Linux}}
\item \href{https://github.com/openwrt/packages/tree/master/libs/elektra}{\texttt{ Openwrt}}
\item \href{https://github.com/Linuxbrew/homebrew-core/blob/master/Formula/elektra.rb}{\texttt{ Linux\+Brew}}
\end{DoxyItemize}\hypertarget{doc_INSTALL_md_autotoc_md2729}{}\doxysubsection{Debian/\+Ubuntu}\label{doc_INSTALL_md_autotoc_md2729}
We provide repositories for latest releases and latest builds from master (suite postfixed with {\ttfamily -\/unstable}) for following Debian-\/based distributions\+:


\begin{DoxyItemize}
\item Debian Bullseye
\item Debian Buster
\item Ubuntu Focal
\item Ubuntu Bionic
\end{DoxyItemize}

To use our stable repositories with our latest releases, following steps need to be made\+:


\begin{DoxyEnumerate}
\item Run {\ttfamily sudo apt-\/key adv -\/-\/keyserver keyserver.\+ubuntu.\+com -\/-\/recv-\/keys F26\+BBE02\+F3\+C315\+A19\+BF1\+F791\+A9\+A25\+CC1\+CC83\+E839} to obtain the key.
\item Add {\ttfamily deb \href{https://debs.libelektra.org/}{\texttt{ https\+://debs.\+libelektra.\+org/}}$<$DISTRIBUTION$>$ $<$SUITE$>$ main} into {\ttfamily /etc/apt/sources.list} where {\ttfamily $<$DISTRIBUTION$>$} and {\ttfamily $<$SUITE$>$} is the codename of your distributions e.\+g.{\ttfamily focal},{\ttfamily bionic},{\ttfamily buster}, etc.

This can also be done using\+:
\end{DoxyEnumerate}


\begin{DoxyCode}{0}
\DoxyCodeLine{\# Example for Ubuntu Focal}
\DoxyCodeLine{sudo apt-\/get install software-\/properties-\/common apt-\/transport-\/https}
\DoxyCodeLine{echo "{}deb https://debs.libelektra.org/focal focal main"{} | sudo tee /etc/apt/sources.list.d/elektra.list}

\end{DoxyCode}


Or alternatively, you can use (if you do not mind many dependences just to add one line to a config file)\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\# Example for Ubuntu Focal}
\DoxyCodeLine{sudo apt-\/get install software-\/properties-\/common apt-\/transport-\/https}
\DoxyCodeLine{sudo add-\/apt-\/repository "{}deb https://debs.libelektra.org/focal focal main"{}}

\end{DoxyCode}


If you would like to use the latest builds of master, append {\ttfamily -\/unstable} to {\ttfamily $<$SUITE$>$}.

The {\ttfamily etc/apt/source.\+list} entry must look like following\+: {\ttfamily deb \href{https://debs.libelektra.org/}{\texttt{ https\+://debs.\+libelektra.\+org/}}$<$DISTRIBUTION$>$ $<$SUITE$>$-\/unstable main}

E.\+g. {\ttfamily deb \href{https://debs.libelektra.org/focal}{\texttt{ https\+://debs.\+libelektra.\+org/focal}} focal-\/unstable main}


\begin{DoxyEnumerate}
\item Run {\ttfamily sudo apt-\/get update}.
\end{DoxyEnumerate}

\begin{quote}
NOTE\+: for Ubuntu Bionic the yamlcpp plugin is excluded due to missing dependencies and therefore the package {\ttfamily libelektra5-\/yamlcpp} is not available. \end{quote}
\hypertarget{doc_INSTALL_md_autotoc_md2730}{}\doxysubsection{Fedora}\label{doc_INSTALL_md_autotoc_md2730}
We provide repositories for latest releases and latest builds from master (suite postfixed with {\ttfamily -\/unstable}) for Fedora 33 and Fedora 34

For our stable repository with our latest releases\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{wget https://rpms.libelektra.org/fedora-\/34/libelektra.repo -\/O libelektra.repo;}
\DoxyCodeLine{sudo mv libelektra.repo /etc/yum.repos.d/;}
\DoxyCodeLine{sudo yum update}

\end{DoxyCode}


Or alternatively you can use dnf to add this repo\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo dnf config-\/manager -\/-\/add-\/repo https://rpms.libelektra.org/fedora-\/34/libelektra.repo}

\end{DoxyCode}


For our latest builds from master append {\ttfamily -\/unstable} to the suite name\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{wget https://rpms.libelektra.org/fedora-\/34-\/unstable/libelektra.repo -\/O libelektra.repo;}
\DoxyCodeLine{sudo mv libelektra.repo /etc/yum.repos.d/;}
\DoxyCodeLine{sudo yum update}

\end{DoxyCode}


Or alternatively you can use dnf to add this repo\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo dnf config-\/manager -\/-\/add-\/repo https://rpms.libelektra.org/fedora-\/34-\/unstable/libelektra.repo}

\end{DoxyCode}
\hypertarget{doc_INSTALL_md_autotoc_md2731}{}\doxysubsection{open\+SUSE}\label{doc_INSTALL_md_autotoc_md2731}
We provide repositories for latest releases and latest builds from master (suite postfixed with {\ttfamily -\/unstable}) for open\+SUSE Leap 15.\+3

For our stable repository with our latest releases\+:

\begin{quote}
NOTE\+: stable packages will be available as of the {\ttfamily 0.\+9.\+8} release. \end{quote}

\begin{DoxyCode}{0}
\DoxyCodeLine{sudo zypper ar -\/f https://rpms.libelektra.org/opensuse-\/leap-\/15.3 libelektra}
\DoxyCodeLine{sudo zypper update}

\end{DoxyCode}


For our latest builds from master append {\ttfamily -\/unstable} to the suite name\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo zypper ar -\/f https://rpms.libelektra.org/opensuse-\/leap-\/15.3-\/unstable libelektra-\/unstable}
\DoxyCodeLine{sudo zypper update}

\end{DoxyCode}
\hypertarget{doc_INSTALL_md_autotoc_md2732}{}\doxysubsection{Install}\label{doc_INSTALL_md_autotoc_md2732}
To get all packaged plugins, bindings and tools install\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\# For Debian based distributions}
\DoxyCodeLine{apt-\/get install libelektra5-\/all}
\DoxyCodeLine{\# For Fedora based distributions}
\DoxyCodeLine{dnf install libelektra5-\/all}
\DoxyCodeLine{\# For openSUSE}
\DoxyCodeLine{zypper install libelektra5-\/all}

\end{DoxyCode}


For a small installation with command-\/line tools available use\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\# For Debian based distributions}
\DoxyCodeLine{apt-\/get install elektra-\/bin}
\DoxyCodeLine{\# For Fedora based distributions}
\DoxyCodeLine{dnf install elektra-\/bin}
\DoxyCodeLine{\# For openSUSE}
\DoxyCodeLine{zypper install elektra-\/bin}

\end{DoxyCode}


To install all debugsym/debuginfo packages\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\# For Debian based distributions}
\DoxyCodeLine{apt-\/get install elektra-\/dbg}
\DoxyCodeLine{\# For Fedora based distributions}
\DoxyCodeLine{dnf install elektra-\/dbg}
\DoxyCodeLine{\# For openSUSE}
\DoxyCodeLine{zypper install elektra-\/dbg}

\end{DoxyCode}


If you want to install individual debugsym/debuginfo packages\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\# For Debian based distributions}
\DoxyCodeLine{apt-\/get install <packagename>-\/dbgsym \# e.g. apt-\/get install libelektra5-\/dbgsym}
\DoxyCodeLine{\# For Fedora based distributions}
\DoxyCodeLine{dnf debuginfo-\/install <packagename> \# e.g. dnf debuginfo-\/install libelektra5}
\DoxyCodeLine{\# For openSUSE}
\DoxyCodeLine{zypper install <packagename>-\/debuginfo \# e.g. zypper install libelektra5-\/debuginfo}

\end{DoxyCode}


To build Debian/\+Ubuntu Packages from the source you might want to use\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{make package \# See CPack below}

\end{DoxyCode}
\hypertarget{doc_INSTALL_md_autotoc_md2733}{}\doxysection{mac\+OS}\label{doc_INSTALL_md_autotoc_md2733}
You can install Elektra using \href{http://brew.sh}{\texttt{ Homebrew}} via the shell command\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{brew install elektra}

\end{DoxyCode}


. We also provide a tap containing a more elaborate formula \href{http://github.com/ElektraInitiative/homebrew-elektra}{\texttt{ here}}.\hypertarget{doc_INSTALL_md_autotoc_md2734}{}\doxysection{Windows}\label{doc_INSTALL_md_autotoc_md2734}
Installation for WSL is described \mbox{\hyperlink{doc_tutorials_contributing-windows_md}{here}}.

If you prefer native but in functionality limited version you can download Min\+GW \href{https://build.libelektra.org/job/libelektra/job/master/lastSuccessfulBuild/artifact/artifacts/debian-bullseye-mingw-w64-i686/elektra.zip}{\texttt{ 32-\/bit}} and \href{https://build.libelektra.org/job/libelektra/job/master/lastSuccessfulBuild/artifact/artifacts/debian-bullseye-mingw-w64-x86_64/elektra.zip}{\texttt{ 64-\/bit}} builds.

Otherwise please refer to the section {\ttfamily OS Independent} below.\hypertarget{doc_INSTALL_md_autotoc_md2735}{}\doxysection{OS Independent}\label{doc_INSTALL_md_autotoc_md2735}
First follow the steps in \mbox{\hyperlink{doc_COMPILE_md}{COMPILE}}.

After you completed building Elektra on your own, there are multiple options how to install it. For example, with make or CPack tools. We recommend using the packages from our build server or that you generate your own packages with CPack.\hypertarget{doc_INSTALL_md_autotoc_md2736}{}\doxysubsection{CPack}\label{doc_INSTALL_md_autotoc_md2736}
The current supported systems are\+: Debian, Ubuntu and Fedora.

Then use\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{make package}

\end{DoxyCode}


which will create packages for distributions where a Generator is implemented.

You can find the generated packages in the {\ttfamily package} directory of the build directory.

\begin{quote}
NOTE\+: If all plugins/bindings/tools a package includes are excluded, the package will not be generated. \end{quote}
\hypertarget{doc_INSTALL_md_autotoc_md2737}{}\doxysubsubsection{Debian/\+Ubuntu}\label{doc_INSTALL_md_autotoc_md2737}
First make sure you have debhelper and d-\/shlibs installed\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{apt-\/get install debhelper d-\/shlibs}

\end{DoxyCode}


(Otherwise you\textquotesingle{}ll see an error file utility is not available, breaking CPACK\+\_\+\+DEBIAN\+\_\+\+PACKAGE\+\_\+\+SHLIBDEPS and CPACK\+\_\+\+DEBIAN\+\_\+\+PACKAGE\+\_\+\+GENERATE\+\_\+\+SHLIBS.)

On Debian-\/based distributions you will need to set LD\+\_\+\+LIBRARY\+\_\+\+PATH before generating the package. Simply {\ttfamily cd} into the build directory and run following command\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{LD\_LIBRARY\_PATH=\$(pwd)/lib:\$\{LD\_LIBRARY\_PATH\} make package -\/j2}

\end{DoxyCode}


To install the packages run this in the {\ttfamily package} directory\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo apt-\/get install ./*}

\end{DoxyCode}


If any dependency problems appear, run following command to install the missing dependencies\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo apt-\/get -\/f install}

\end{DoxyCode}
\hypertarget{doc_INSTALL_md_autotoc_md2738}{}\doxysubsubsection{Fedora}\label{doc_INSTALL_md_autotoc_md2738}
To install RPM packages we recommend using {\ttfamily yum localinstall} since installing with {\ttfamily rpm} doesn\textquotesingle{}t resolve missing dependencies.

Run following command in the {\ttfamily package} directory\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo yum localinstall *}

\end{DoxyCode}
\hypertarget{doc_INSTALL_md_autotoc_md2739}{}\doxysubsection{make}\label{doc_INSTALL_md_autotoc_md2739}

\begin{DoxyCode}{0}
\DoxyCodeLine{sudo make install}
\DoxyCodeLine{sudo ldconfig  \# See troubleshooting below}

\end{DoxyCode}


To uninstall Elektra use (will not be very clean, e.\+g. it will not remove directories and {\ttfamily $\ast$.pyc} files)\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{sudo make uninstall}
\DoxyCodeLine{sudo ldconfig}

\end{DoxyCode}


or in the build directory (will not honor {\ttfamily DESTDIR}!)\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{xargs rm < install\_manifest.txt}

\end{DoxyCode}
\hypertarget{doc_INSTALL_md_autotoc_md2740}{}\doxysection{Troubleshooting}\label{doc_INSTALL_md_autotoc_md2740}
\hypertarget{doc_INSTALL_md_autotoc_md2741}{}\doxysubsection{Error Loading Libraries}\label{doc_INSTALL_md_autotoc_md2741}
If you encounter the problem that the library can not be found (output like this)


\begin{DoxyCode}{0}
\DoxyCodeLine{kdb: error while loading shared libraries:}
\DoxyCodeLine{     libelektra-\/core.so.4: cannot open shared object file: No such file or directory}

\end{DoxyCode}


or\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{kdb: error while loading shared libraries:}
\DoxyCodeLine{     libelektratools.so.2: cannot open shared object file: No such file or directory}

\end{DoxyCode}


you need to place a configuration file at {\ttfamily /etc/ld.so.\+conf.\+d/} (e.\+g. {\ttfamily /etc/ld.so.\+conf.\+d/elektra.conf}). Note that under Alpine Linux this file is called {\ttfamily /etc/ld-\/musl-\/x86\+\_\+64.path} or similar, depending on your architecture.

Add the path where the library has been installed (on Alpine Linux this had to be {\ttfamily usr/lib/elektra} for it to work)


\begin{DoxyCode}{0}
\DoxyCodeLine{/usr/lib/local/}

\end{DoxyCode}


and run {\ttfamily ldconfig} as root.\hypertarget{doc_INSTALL_md_autotoc_md2742}{}\doxysection{Installation Manuals}\label{doc_INSTALL_md_autotoc_md2742}
For some plugins and tools that ship with Elektra, additional installation manuals have been written. You can find them in the \mbox{\hyperlink{md_doc_tutorials_README_doc_tutorials_README_md}{tutorial overview}}.\hypertarget{doc_INSTALL_md_autotoc_md2743}{}\doxysection{See Also}\label{doc_INSTALL_md_autotoc_md2743}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_COMPILE_md}{COMPILE}}.
\item \mbox{\hyperlink{doc_TESTING_md}{TESTING}}. 
\end{DoxyItemize}