blob: 47cf2cbd43197861679a57dffdee695abd0b551b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
OpenWrt
=======
General info about OpenWrt buildsystem: `link <https://openwrt.org/docs/guide-developer/build-system/start>`_.
Prepare build environment
-------------------------
For Debian based distributions, run:
::
sudo apt-get install git build-essential libssl-dev libncurses5-dev \
unzip zlib1g-dev subversion mercurial
For other environments, instructions can be found in the
`official documentation
<https://openwrt.org/docs/guide-developer/build-system/install-buildsystem#examples_of_package_installations>`_.
Get OpenWrt Sources (from Git)
------------------------------
.. note::
The OpenWrt build will fail if you run it as root. So take care to run it as a nonprivileged user.
Clone the OpenWrt sources and retrieve the package feeds
::
git clone https://github.com/openwrt/openwrt.git
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a
Configure OpenWrt for your target and select the needed FRR packages in Network -> Routing and Redirection -> frr,
exit and save
::
make menuconfig
Then, to compile either a complete OpenWrt image, or the FRR packages, run:
::
make or make package/frr/compile
It may be possible that on first build ``make package/frr/compile`` not
to work and it may be needed to run a ``make`` for the entire build
environment. Add ``V=s`` to get more debugging output.
More information about OpenWrt buildsystem can be found `here
<https://openwrt.org/docs/guide-developer/build-system/use-buildsystem>`__.
Work with sources
-----------------
To update to a newer version, or change other options, you need to edit the ``feeds/packages/frr/Makefile``.
More information about working with patches in OpenWrt buildsystem can be found `here
<https://openwrt.org/docs/guide-developer/build-system/use-patches-with-buildsystem>`__.
Usage
-----
Edit ``/usr/sbin/frr.init`` and add/remove the daemons name in section
``DAEMONS=`` or don't install unneeded packages For example: zebra bgpd ldpd
isisd nhrpd ospfd ospf6d pimd ripd ripngd
Enable the service
^^^^^^^^^^^^^^^^^^
- ``service frr enable``
Start the service
^^^^^^^^^^^^^^^^^
- ``service frr start``
|