.. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Convention for heading levels in Open vSwitch documentation: ======= Heading 0 (reserved for the title in a document) ------- Heading 1 ~~~~~~~ Heading 2 +++++++ Heading 3 ''''''' Heading 4 Avoid deeper levels because they do not render well. ============================ Open vSwitch on Fedora Linux ============================ This document provides instructions for building and installing Open vSwitch RPM packages on a Fedora Linux host. Instructions for the installation of Open vSwitch on a Fedora Linux host without using RPM packages can be found in the `general installation guide `__. These instructions have been tested with Fedora 23, and are also applicable for RHEL 7.x and its derivatives, including CentOS 7.x and Scientific Linux 7.x. Build Requirements ------------------ To build packages for a Fedora Linux host, you will need the packages described in the `general installation guide `__. Specific packages (by package name) include: - rpm-build - autoconf automake libtool - systemd-units openssl openssl-devel - python python-twisted-core python-zope-interface python-six - desktop-file-utils - groff graphviz - procps-ng And (optionally): - libcap-ng libcap-ng-devel - dpdk-devel Bootstraping ------------ Refer to the *Bootstrapping* section of the `general installation guide `__. Configuring ----------- Refer to the *Configuring* section of the `general installation guide `__. Building -------- User Space RPMs ~~~~~~~~~~~~~~~ To build Open vSwitch user-space RPMs, execute the following from the directory in which `./configure` was executed: :: $ make rpm-fedora This will create the RPMs `openvswitch`, `python-openvswitch`, `openvswitch-test`, `openvswitch-devel`, `openvswitch-ovn-common`, `openvswitch-ovn-central`, `openvswitch-ovn-host`, `openvswitch-ovn-vtep`, `openvswitch-ovn-docker`, and `openvswitch-debuginfo`. To enable DPDK support in the openvswitch package, the ``--with dpdk`` option can be added: :: $ make rpm-fedora RPMBUILD_OPT="--with dpdk" The above commands automatically run the Open vSwitch unit tests, which can take several minutes. To reduce the build time by disabling the execution of these tests, the ``--without check`` option can be added: :: $ make rpm-fedora RPMBUILD_OPT="--without check" Kernel OVS Tree Datapath RPM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ To build the Open vSwitch kernel module for the currently running kernel version, run: :: $ make rpm-fedora-kmod To build the Open vSwitch kernel module for another kernel version, the desired kernel version can be specified via the `kversion` macro. For example: :: $ make rpm-fedora-kmod \ RPMBUILD_OPT='-D "kversion 4.3.4-300.fc23.x86_64"' Installing ---------- RPM packages can be installed by using the command ``rpm -i``. Package installation requires superuser privileges. The `openvswitch-kmod` RPM should be installed first if the Linux OVS tree datapath module is to be used. The `openvswitch-kmod` RPM should not be installed if only the in-tree Linux datapath or user-space datapath is needed. See the `FAQ document `__ for more information about the various Open vSwitch datapath options. In most cases only the `openvswitch` RPM will need to be installed. The `python-openvswitch`, `openvswitch-test`, `openvswitch-devel`, and `openvswitch-debuginfo` RPMs are optional unless required for a specific purpose. The `openvswitch-ovn-*` packages are only needed when using OVN. Refer to the `RHEL README `__ for additional usage and configuration information. Reporting Bugs -------------- Report problems to bugs@openvswitch.org.