From fc5a4adc5de35db56032888f2aa978bcab444ddc Mon Sep 17 00:00:00 2001 From: Renato Westphal Date: Mon, 15 Oct 2018 22:00:12 -0300 Subject: [PATCH] doc: add build instructions for libyang These instructions are intended to be temporary until we have libyang packages available for all supported platforms. Signed-off-by: Renato Westphal --- doc/developer/building-frr-for-centos6.rst | 2 ++ doc/developer/building-frr-for-centos7.rst | 2 ++ doc/developer/building-frr-for-debian8.rst | 2 ++ doc/developer/building-frr-for-debian9.rst | 2 ++ doc/developer/building-frr-for-fedora24.rst | 2 ++ doc/developer/building-frr-for-freebsd10.rst | 2 +- doc/developer/building-frr-for-freebsd11.rst | 2 +- doc/developer/building-frr-for-freebsd9.rst | 2 ++ doc/developer/building-frr-for-netbsd6.rst | 2 ++ doc/developer/building-frr-for-netbsd7.rst | 2 ++ doc/developer/building-frr-for-omnios.rst | 2 ++ doc/developer/building-frr-for-openbsd6.rst | 2 ++ doc/developer/building-frr-for-ubuntu1204.rst | 2 ++ doc/developer/building-frr-for-ubuntu1404.rst | 2 ++ doc/developer/building-frr-for-ubuntu1604.rst | 2 ++ doc/developer/building-frr-for-ubuntu1804.rst | 2 ++ doc/developer/building-libyang.rst | 25 +++++++++++++++++++ 17 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 doc/developer/building-libyang.rst diff --git a/doc/developer/building-frr-for-centos6.rst b/doc/developer/building-frr-for-centos6.rst index f085598e08..5f9ce705f2 100644 --- a/doc/developer/building-frr-for-centos6.rst +++ b/doc/developer/building-frr-for-centos6.rst @@ -115,6 +115,8 @@ Update rpm database & Install newer sphinx sudo yum update sudo yum install python27-sphinx +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-centos7.rst b/doc/developer/building-frr-for-centos7.rst index ca62b1239a..8f82cd6c9a 100644 --- a/doc/developer/building-frr-for-centos7.rst +++ b/doc/developer/building-frr-for-centos7.rst @@ -24,6 +24,8 @@ Add packages: json-c-devel pam-devel bison flex pytest c-ares-devel \ python-devel systemd-devel python-sphinx +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-debian8.rst b/doc/developer/building-frr-for-debian8.rst index 2b591bf1aa..97e9382d46 100644 --- a/doc/developer/building-frr-for-debian8.rst +++ b/doc/developer/building-frr-for-debian8.rst @@ -25,6 +25,8 @@ Install newer pytest (>3.0) from pip sudo pip install pytest +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-debian9.rst b/doc/developer/building-frr-for-debian9.rst index db22e4f44e..7c9f567b8d 100644 --- a/doc/developer/building-frr-for-debian9.rst +++ b/doc/developer/building-frr-for-debian9.rst @@ -12,6 +12,8 @@ Add packages: libreadline-dev texinfo libjson-c-dev pkg-config bison flex \ python-pip libc-ares-dev python3-dev python-pytest python3-sphinx +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-fedora24.rst b/doc/developer/building-frr-for-fedora24.rst index 86e0c8d991..2edf9b3e44 100644 --- a/doc/developer/building-frr-for-fedora24.rst +++ b/doc/developer/building-frr-for-fedora24.rst @@ -17,6 +17,8 @@ Add packages: json-c-devel pam-devel pytest bison flex c-ares-devel \ python3-devel python3-sphinx +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-freebsd10.rst b/doc/developer/building-frr-for-freebsd10.rst index e9bc9adb16..5dde915f6a 100644 --- a/doc/developer/building-frr-for-freebsd10.rst +++ b/doc/developer/building-frr-for-freebsd10.rst @@ -17,7 +17,7 @@ is first package install and asked) :: pkg install git autoconf automake libtool gmake gawk json-c pkgconf \ - bison flex py27-pytest c-ares python3 py-sphinx + bison flex py27-pytest c-ares python3 py-sphinx libyang Make sure there is no /usr/bin/flex preinstalled (and use the newly installed in /usr/local/bin): (FreeBSD frequently provides a older flex diff --git a/doc/developer/building-frr-for-freebsd11.rst b/doc/developer/building-frr-for-freebsd11.rst index f578f085ae..9bef1fbfde 100644 --- a/doc/developer/building-frr-for-freebsd11.rst +++ b/doc/developer/building-frr-for-freebsd11.rst @@ -17,7 +17,7 @@ is first package install and asked) .. code-block:: shell pkg install git autoconf automake libtool gmake gawk json-c pkgconf \ - bison flex py27-pytest c-ares python3 py36-sphinx texinfo + bison flex py27-pytest c-ares python3 py36-sphinx texinfo libyang Make sure there is no /usr/bin/flex preinstalled (and use the newly installed in /usr/local/bin): (FreeBSD frequently provides a older flex diff --git a/doc/developer/building-frr-for-freebsd9.rst b/doc/developer/building-frr-for-freebsd9.rst index 0efa2ebd80..36492fb886 100644 --- a/doc/developer/building-frr-for-freebsd9.rst +++ b/doc/developer/building-frr-for-freebsd9.rst @@ -40,6 +40,8 @@ compile) mv /usr/bin/clang /usr/bin/clang34 ln -s /usr/local/bin/clang36 /usr/bin/clang +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-netbsd6.rst b/doc/developer/building-frr-for-netbsd6.rst index 2023a4fafa..a042077fd0 100644 --- a/doc/developer/building-frr-for-netbsd6.rst +++ b/doc/developer/building-frr-for-netbsd6.rst @@ -40,6 +40,8 @@ Select default Python and py.test sudo ln -s /usr/pkg/bin/python2.7 /usr/bin/python sudo ln -s /usr/pkg/bin/py.test-2.7 /usr/bin/py.test +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-netbsd7.rst b/doc/developer/building-frr-for-netbsd7.rst index 6b31e68e8a..b65891916c 100644 --- a/doc/developer/building-frr-for-netbsd7.rst +++ b/doc/developer/building-frr-for-netbsd7.rst @@ -31,6 +31,8 @@ Select default Python and py.test sudo ln -s /usr/pkg/bin/python2.7 /usr/bin/python sudo ln -s /usr/pkg/bin/py.test-2.7 /usr/bin/py.test +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-omnios.rst b/doc/developer/building-frr-for-omnios.rst index 45df049d39..416c89c667 100644 --- a/doc/developer/building-frr-for-omnios.rst +++ b/doc/developer/building-frr-for-omnios.rst @@ -86,6 +86,8 @@ Edit ``~/.profile`` and add the following default PATH: PATH=/usr/gnu/bin:/usr/bin:/usr/sbin:/sbin:/opt/csw/bin +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-openbsd6.rst b/doc/developer/building-frr-for-openbsd6.rst index c68c18eb7c..0f8d4d0f25 100644 --- a/doc/developer/building-frr-for-openbsd6.rst +++ b/doc/developer/building-frr-for-openbsd6.rst @@ -23,6 +23,8 @@ Select Python2.7 as default (required for pytest) ln -s /usr/local/bin/python2.7 /usr/local/bin/python +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-ubuntu1204.rst b/doc/developer/building-frr-for-ubuntu1204.rst index 1afd66c459..9b2394f018 100644 --- a/doc/developer/building-frr-for-ubuntu1204.rst +++ b/doc/developer/building-frr-for-ubuntu1204.rst @@ -64,6 +64,8 @@ Install pytest: pip install pytest +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-ubuntu1404.rst b/doc/developer/building-frr-for-ubuntu1404.rst index 98dbb79002..81ca970469 100644 --- a/doc/developer/building-frr-for-ubuntu1404.rst +++ b/doc/developer/building-frr-for-ubuntu1404.rst @@ -18,6 +18,8 @@ Add packages: pkg-config libpam0g-dev libjson-c-dev bison flex python-pytest \ libc-ares-dev python3-dev python3-sphinx install-info +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-ubuntu1604.rst b/doc/developer/building-frr-for-ubuntu1604.rst index b2eec49236..9830b24dfc 100644 --- a/doc/developer/building-frr-for-ubuntu1604.rst +++ b/doc/developer/building-frr-for-ubuntu1604.rst @@ -19,6 +19,8 @@ Add packages: libc-ares-dev python3-dev libsystemd-dev python-ipaddress \ python3-sphinx install-info +.. include:: building-libyang.rst + Get FRR, compile it and install it (from Git) --------------------------------------------- diff --git a/doc/developer/building-frr-for-ubuntu1804.rst b/doc/developer/building-frr-for-ubuntu1804.rst index f5cf651e22..2d1edc063d 100644 --- a/doc/developer/building-frr-for-ubuntu1804.rst +++ b/doc/developer/building-frr-for-ubuntu1804.rst @@ -15,6 +15,8 @@ Required packages libc-ares-dev python3-dev libsystemd-dev python-ipaddress \ python3-sphinx install-info +.. include:: building-libyang.rst + Optional packages ^^^^^^^^^^^^^^^^^ diff --git a/doc/developer/building-libyang.rst b/doc/developer/building-libyang.rst new file mode 100644 index 0000000000..3555658cf9 --- /dev/null +++ b/doc/developer/building-libyang.rst @@ -0,0 +1,25 @@ +The libyang library can be installed from third-party packages available `here +`_. + +Note: the libyang dev/devel packages need to be installed in addition +to the libyang core package in order to build FRR successfully. + +Alternatively, libyang can be built and installed manually by following +the steps below: + +.. code-block:: shell + + git clone https://github.com/opensourcerouting/libyang + cd libyang + git checkout -b tmp origin/tmp + mkdir build; cd build + cmake -DENABLE_LYD_PRIV=ON .. + make + sudo make install + +When building libyang on CentOS 6, it's also necessary to pass the +``-DENABLE_CACHE=OFF`` parameter to cmake. + +Note: please check the `libyang build requirements +`_ +first. -- 2.39.5