Skip to contentSkip to conversation

doc/power: add info on jansson conditional build

PATCH Superseded David Hunt 3 participants 4 messages Nov 1, 2018 – Nov 19, 2018

lore
Share & tools
lore

David Hunt

author
#0 lore raw

PATCH 1/1 doc/power: add info on jansson conditional build

Add more info to the docs on how to set environmental variable to correctly build the vm_power_manager sample app in a cross compile or multilib environment by setting PKG_CONFIG_LIBDIR.

---
 .../sample_app_ug/vm_power_management.rst     | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)
doc/guides/sample_app_ug/vm_power_management.rst +24 -0
index 1ad4f1490..b5280d727 100644
@@ -657,6 +657,30 @@ To build just the ``guest_vm_power_manager`` application using ``make``:
 
 The resulting binary will be ${RTE_SDK}/build/examples/guest_cli
 
+Note: This sample application conditionally links in the Jansson JSON
+library, so if you are using a multilib or cross compile environment you
+may need to set the PKG_CONFIG_LIBDIR environmental variable to point to
+the relevant pkgconfig folder so that the correct library is linked in.
+
+For example, if you are building for a 32-bit target, you could find the
+correct directory using the following ``find`` command:
+
+.. code-block:: console
+
+    # find /usr -type d -name pkgconfig
+    /usr/lib/i386-linux-gnu/pkgconfig
+    /usr/lib/x86_64-linux-gnu/pkgconfig
+
+Then use:
+
+.. code-block:: console
+
+    export PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig
+
+You then use the make command as normal, which should find the 32-bit
+version of the library, if it installed. If not, the application will
+be built without the JSON interface functionality.
+
 To build just the ``vm_power_manager`` application using ``meson/ninja``:
 
 .. code-block:: console
Signature · 1 line
2.17.1
author
#1 lore raw

PATCH v2 1/1 doc/power: add info on jansson conditional build

Add more info to the docs on how to set environmental variable to correctly build the vm_power_manager sample app in a cross compile or multilib environment by setting PKG_CONFIG_LIBDIR.

---
v2:
Changed the note to be shown using the ``.. Note::`` tag.

---
 .../sample_app_ug/vm_power_management.rst     | 25 +++++++++++++++++++
 1 file changed, 25 insertions(+)
doc/guides/sample_app_ug/vm_power_management.rst +25 -0
index 1ad4f1490..5be9f24d5 100644
@@ -657,6 +657,31 @@ To build just the ``guest_vm_power_manager`` application using ``make``:
 
 The resulting binary will be ${RTE_SDK}/build/examples/guest_cli
 
+.. Note::
+  This sample application conditionally links in the Jansson JSON
+  library, so if you are using a multilib or cross compile environment you
+  may need to set the ``PKG_CONFIG_LIBDIR`` environmental variable to point to
+  the relevant pkgconfig folder so that the correct library is linked in.
+
+  For example, if you are building for a 32-bit target, you could find the
+  correct directory using the following ``find`` command:
+
+  .. code-block:: console
+
+      # find /usr -type d -name pkgconfig
+      /usr/lib/i386-linux-gnu/pkgconfig
+      /usr/lib/x86_64-linux-gnu/pkgconfig
+
+  Then use:
+
+  .. code-block:: console
+
+      export PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig
+
+  You then use the make command as normal, which should find the 32-bit
+  version of the library, if it installed. If not, the application will
+  be built without the JSON interface functionality.
+
 To build just the ``vm_power_manager`` application using ``meson/ninja``:
 
 .. code-block:: console
Signature · 1 line
2.17.1