summaryrefslogtreecommitdiff
path: root/INSTALL.Fedora.md
blob: 09defec3181d278ff6fb7520011943452067bb23 (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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
How to Install Open vSwitch on Fedora Linux
===========================================

This document describes how to build and install Open vSwitch on a Fedora
Linux host.  If you want to install Open vSwitch on a generic Linux host,
see [INSTALL.md] instead.

We have tested these instructions with Fedora 23. These instructions are also
used for RHEL 7.x and its derivatives, such as CentOS 7.x.

Building Open vSwitch for Fedora
--------------------------------

You may build from an Open vSwitch distribution tarball or from an
Open vSwitch Git tree.

The default RPM build directory (_topdir) has five directories in
the top-level:
1. BUILD/ Where the software is unpacked and built.
2. RPMS/ Where the newly created binary package files are written.
3. SOURCES/ Contains the original sources, patches, and icon files.
4. SPECS/ Contains the spec files for each package to be built.
5. SRPMS/ Where the newly created source package files are written.

Before you begin, note the RPM sources directory on your version of
Fedora.  The command "rpmbuild --showrc" will show the configuration
for each of those directories. Alternatively, the command "rpm --eval
 '%{_topdir}'" shows the current configuration for the top level
directory and the command "rpm --eval '%{_sourcedir}'" does the same
for the sources directory.  On Fedora 23, the default RPM _topdir is
$HOME/rpmbuild and the default RPM sources directory is
$HOME/rpmbuild/SOURCES.

1. If you are building from a distribution tarball, skip to step 2.
   Otherwise, you must be building from an Open vSwitch Git tree.
   Create a distribution tarball from the root of the Git tree by
   running:

       ```
       ./boot.sh
       ./configure
       make dist
	   ```

2. Now you have a distribution tarball, named something like
   openvswitch-x.y.z.tar.gz.  Copy this file into the RPM sources
   directory, e.g.:

       `cp openvswitch-x.y.z.tar.gz $HOME/rpmbuild/SOURCES`

3. Make another copy of the distribution tarball in a temporary
   directory.  Then unpack the tarball and "cd" into its root, e.g.:

       ```
       tar xzf openvswitch-x.y.z.tar.gz
       cd openvswitch-x.y.z
	   ```

4. To build Open vSwitch userspace, run:

       `rpmbuild -bb rhel/openvswitch-fedora.spec`

   This produces one RPM: "openvswitch".

   To enable DPDK support in the resulting openvswitch package,
   add `--with dpdk` to the build command.

   The above command automatically runs the Open vSwitch unit tests.
   To disable the unit tests, run:

       `rpmbuild -bb --without check rhel/openvswitch-fedora.spec`

5. On Fedora 23, to build the Open vSwitch kernel module, run:

	`rpmbuild -bb rhel/openvswitch-kmod-fedora.spec`

    You might have to specify a kernel version and/or variants, e.g.:

	```
	rpmbuild -bb \
		-D "kversion 4.3.3-300.fc23.x86_64” \
		-D "kflavors default debug kdump" \
		rhel/openvswitch-kmod-fedora.spec
	```

    This produces an "kmod-openvswitch" RPM for each kernel variant,
    in this example: "kmod-openvswitch", "kmod-openvswitch-debug", and
    "kmod-openvswitch-kdump".

Reporting Bugs
--------------

Please report problems to bugs@openvswitch.org.

[INSTALL.md]:INSTALL.md