event/cnxk: add option to control SSO HWGRP QoS
[dpdk.git] / doc / guides / linux_gsg / build_dpdk.rst
index a895e1b..f78eef2 100644 (file)
@@ -6,11 +6,6 @@
 Compiling the DPDK Target from Source
 =====================================
 
-.. note::
-
-    Parts of this process can also be done using the setup script described in
-    the :ref:`linux_setup_script` section of this document.
-
 Uncompress DPDK and Browse Sources
 ----------------------------------
 
@@ -76,6 +71,7 @@ and the last step causing the dynamic loader `ld.so` to update its cache to take
    distributions, `/usr/local/lib` and `/usr/local/lib64` should be added
    to a file in `/etc/ld.so.conf.d/` before running `ldconfig`.
 
+.. _adjusting_build_options:
 
 Adjusting Build Options
 ~~~~~~~~~~~~~~~~~~~~~~~
@@ -112,6 +108,37 @@ dependencies are met on the current system are built.
 When `-Dexamples=all` is set as a meson option, meson will check each example application to see if it can be built,
 and add all which can be built to the list of tasks in the ninja build configuration file.
 
+
+Building 32-bit DPDK on 64-bit Systems
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+To build a 32-bit copy of DPDK on a 64-bit OS,
+the ``-m32`` flag should be passed to the compiler and linker
+to force the generation of 32-bit objects and binaries.
+This can be done either by setting ``CFLAGS`` and ``LDFLAGS`` in the environment,
+or by passing the value to meson using ``-Dc_args=-m32`` and ``-Dc_link_args=-m32``.
+For correctly identifying and using any dependency packages,
+the ``pkg-config`` tool must also be configured
+to look in the appropriate directory for .pc files for 32-bit libraries.
+This is done by setting ``PKG_CONFIG_LIBDIR`` to the appropriate path.
+
+The following meson command can be used on RHEL/Fedora systems to configure a 32-bit build,
+assuming the relevant 32-bit development packages, such as a 32-bit libc, are installed::
+
+  PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig \
+      meson -Dc_args='-m32' -Dc_link_args='-m32' build
+
+For Debian/Ubuntu systems, the equivalent command is::
+
+  PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig \
+      meson -Dc_args='-m32' -Dc_link_args='-m32' build
+
+Once the build directory has been configured,
+DPDK can be compiled using ``ninja`` as described above.
+
+
+.. _building_app_using_installed_dpdk:
+
 Building Applications Using Installed DPDK
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
@@ -135,7 +162,8 @@ and the sources for that build are stored in ``$(SRCS-y)``.
 
 .. note::
 
-   Unlike with the older make build system, the meson system is not
+   Unlike with the make build system present in older DPDK releases,
+   the meson system is not
    designed to be used directly from a build directory. Instead it is
    recommended that it be installed either system-wide or to a known
    location in the user's home directory. The install location can be set