dpif-netlink: add GENEVE creation support
[cascardo/ovs.git] / INSTALL.Fedora.md
1 How to Install Open vSwitch on Fedora Linux
2 ===========================================
3
4 This document provides instructions for building and installing Open vSwitch
5 RPM packages on a Fedora Linux host.  Instructions for the installation of
6 Open vSwitch on a Fedora Linux host without using RPM packages can be found
7 in [INSTALL.md].
8
9 These instructions have been tested with Fedora 23, and are also applicable
10 for RHEL 7.x and its derivatives, including CentOS 7.x and Scientific Linux
11 7.x.
12
13 Build Requirements
14 ------------------
15 The tools and packages that are required for building Open vSwitch are
16 documented in [INSTALL.md]. Specific packages (by package name) include:
17
18   - rpm-build
19   - autoconf automake libtool
20   - systemd-units openssl openssl-devel
21   - python python-twisted-core python-zope-interface PyQt4 python-six
22   - desktop-file-utils
23   - groff graphviz
24   - procps-ng
25
26 And (optionally):
27
28   - libcap-ng libcap-ng-devel
29   - dpdk-devel
30
31 Building Open vSwitch RPMs for Fedora
32 -------------------------------------
33
34 RPMs may be built from an Open vSwitch distribution tarball or from an
35 Open vSwitch Git tree. The build procedure for each scenario is described
36 below.
37
38 ### Preparing to Build Open vSwitch RPMs with a GIT Tree
39 From the top-level directory of the git tree, execute the following
40 commands:
41
42 ```
43 ./boot.sh
44 ./configure
45 ```
46
47 ### Preparing to Build Open vSwitch RPMs from a Tarball
48 From a directory with appropriate permissions, execute the following commands
49 (substituting the relevant Open vSwitch release version for "x.y.z"):
50
51 ```
52 tar xzf openvswitch-x.y.z.tar.gz
53 cd openvswitch-x.y.z
54 ./configure
55 ```
56
57 ### Building the User-Space RPMs
58 To build Open vSwitch user-space RPMs, after having completed the appropriate
59 preparation steps described above, execute the following from the directory
60 in which `./configure` was executed:
61
62 ```
63 make rpm-fedora
64 ```
65
66 This will create the RPMs `openvswitch`, `python-openvswitch`,
67 `openvswitch-test`, `openvswitch-devel`, `openvswitch-ovn-common`,
68 `openvswitch-ovn-central`, `openvswitch-ovn-host`, `openvswitch-ovn-vtep`,
69 `openvswitch-ovn-docker`, and `openvswitch-debuginfo`.
70
71 To enable DPDK support in the openvswitch package,
72 the `--with dpdk` option can be added:
73
74 ```
75 make rpm-fedora RPMBUILD_OPT="--with dpdk"
76 ```
77
78 The above commands automatically run the Open vSwitch unit tests,
79 which can take several minutes.  To reduce the build time by
80 disabling the execution of these tests, the `--without check`
81 option can be added:
82
83 ```
84 make rpm-fedora RPMBUILD_OPT="--without check"
85 ```
86
87 ### Building the Kernel OVS Tree Datapath RPM
88 To build the Open vSwitch kernel module for the currently running
89 kernel version, execute:
90
91 ```
92 make rpm-fedora-kmod
93 ```
94
95 To build the Open vSwitch kernel module for another kernel version,
96 the desired kernel version can be specified via the `kversion` macro.
97 For example:
98
99 ```
100 make rpm-fedora-kmod \
101      RPMBUILD_OPT='-D "kversion 4.3.4-300.fc23.x86_64"'
102 ```
103
104 Installing Open vSwitch RPMs
105 ----------------------------
106 RPM packages can be installed by using the command `rpm -i`. Package
107 installation requires superuser privileges.
108
109 The openvswitch-kmod RPM should be installed first if the Linux OVS tree datapath
110 module is to be used. The openvswitch-kmod RPM should not be installed if
111 only the in-tree Linux datapath or user-space datapath is needed. See [FAQ.md]
112 for more information about the various Open vSwitch datapath options.
113
114 In most cases only the `openvswitch` RPM will need to be installed. The
115 `python-openvswitch`, `openvswitch-test`, `openvswitch-devel`, and
116 `openvswitch-debuginfo` RPMs are optional unless required for a specific
117 purpose.
118
119 The `openvswitch-ovn-*` packages are only needed when using OVN.
120
121 See [rhel/README.RHEL] for additional usage and configuration information.
122
123 Reporting Bugs
124 --------------
125
126 Please report problems to bugs@openvswitch.org.
127
128 [INSTALL.md]:INSTALL.md
129 [FAQ.md]:FAQ.md
130 [README.RHEL]:rhel/README.RHEL