Some packages are required. The following are example of debian-based packages:
sudo apt install flex bison git make gcc libnghttp2-dev libssl-dev
Check out the following GIT repos:
- https://github.com/clicon/cligen.git/
- https://github.com/clicon/clixon.git/
- https://github.com/clicon/clixon-controller.git/
- https://github.com/clicon/clixon-pyapi.git/
The source is built as follows.
cd cligen ./configure make sudo make install
cd clixon ./configure make sudo make install
Either use PIP or Debian packages.
PIP:
cd clixon-pyapi sudo -u clicon pip3 install -r requirements.txt sudo python3 setup.py install
Debian:
cd clixon-pyapi sudo ./requirements-apt.sh sudo python3 setup.py install
cd clixon-controller ./configure make sudo make install
The Controller configure script (generated by autoconf) includes several options apart from the standard ones.
- These include (standard options are omitted)
--enable-debug Build with debug symbols, default: no --with-cligen=dir Use CLIGEN here --with-clixon=dir Use Clixon here --with-yang-installdir=DIR Install Yang files here (default: ${prefix}/share/clixon/controller) --with-clicon-user=user Run as this user in example and test --with-clicon-group=group Run as this group in example and test
Install the python code by copy:
sudo cp clixon_server.py /usr/local/bin/
Add a new clicon user and install the needed Python packages, the backend will start the Python server and drop the privileges to this user:
sudo useradd -g clicon -m clicon