BIPS/Getting Started/Building BIPS: Difference between revisions

From RidgeRun Developer Wiki
mNo edit summary
No edit summary
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<noinclude>
<noinclude>
{{BIPS/Head|previous=|next=}}
{{BIPS/Head|previous=Getting Started/Getting the Code|next=}}
</noinclude>
</noinclude>


<seo title="Getting Started With Building BIPS | RidgeRun" titlemode="replace" metakeywords="GStreamer, NVIDIA, Jetson, TX1, TX2, Jetson AGX Xavier, Xavier, AI, Deep Learning, Machine Learning, Jetson TX1, Jetson TX2, Jetson Xavier, NVIDIA Jetson Xavier, NVIDIA Jetson Orin, Jetson Orin, Orin, NVIDIA Orin, NVIDIA Jetson AGX Orin, Jetson AGX Orin, Assembly Line, Assembly Line Activity, activity recognition, machine learning activity recognition, Exploratory Data Analysis, EDA" description="This RidgeRun wiki page provides more information on Buffer Interprocess Sharing (BIPS) and how to get started building BIPS."></seo>


== Dependencies==
== Dependencies==


BIPS is supported for the Jetson TX1/TX2/Nano/Xavier platforms and PC systems that have an NVIDIA GPU. The following packages are needed in order to build and use BIPS:  
BIPS has the following dependencies for building from source:


* list of dep
* libboost-system
* list of dep
* libspdlog
* list of dep
* list of dep
* list of dep


Info: You may need to have POSIX Shared Memory enabled in your kernel.


=== CUDA L4T package ===
=== Core ===


<pre style=background-color:yellow>
Please, install them using (in Debian-based systems):
The Jetpack default installation will flash and install all the necessary CUDA packages. This section describes how to perform a manual installation, which is typically __NOT__ needed
 
</pre>
<syntaxhighlight lang=bash>
sudo apt install -y    \
    libboost-system-dev \
    libspdlog-dev      \
    python3-dev
</syntaxhighlight>
 
=== Documentation (optional) ===
 
For the documentation, consider the following dependencies:
 
* doxygen
* graphviz
* java
 
Please, install them using (in Debian-based systems):
 
<syntaxhighlight lang=bash>
sudo apt install -y    \
    doxygen            \
    graphviz            \
    default-jre        \
    texlive-font-utils
</syntaxhighlight>
 
=== Meson building system ===
 
At the building system level:
 
* ninja-build
* python3-pip
* pkg-config
* meson
 
Please, install them using (in Debian-based systems):
 
<syntaxhighlight lang=bash>
sudo apt install -y \
    python3        \
    python3-pip    \
    ninja-build    \
    pkg-config
</syntaxhighlight>
 
The process should be similar in other systems, not based on Debian.
 
Then, install meson and other elements.
 
<syntaxhighlight lang=bash>
sudo pip3 install meson      \
                  pre-commit
pip3 install numpy
</syntaxhighlight>


== Building the project ==
== Building the project ==
The BIPS package must be built natively.


Once fulfilled the dependencies, you can run a default compilation with:
<syntaxhighlight lang=bash>
meson build -Dnvsci_lib=/usr/lib/$(uname -m)-linux-gnu
ninja -C build
sudo ninja -C build install
</syntaxhighlight>
For additional customization, you may refer to the following table of options:
<center>`
{| class="wikitable"
|-
! Configure Option !! Description
|-
| -Denable-python=disabled || Skip the Python API compilation. Enabled by default.
|-
| -Dwith-python-version=3.8 || Sets the Python version. It takes '3' by default.
|-
| -Denable-docs=disabled || Skip documentation generation. Enabled by default.
|-
| --prefix /usr || Set the installation path of the library
|}
<b>Table 1.</b> BIPS configuration options (Meson)</caption>
</center>
Examples are compiled in the <code>build</code> folder for testing purposes. You can run them in <code>build/src/examples</code>


<noinclude>
<noinclude>
{{BIPS/Foot||}}
{{BIPS/Foot|Getting Started/Getting the Code|}}
</noinclude>
</noinclude>

Latest revision as of 13:23, 28 August 2024



Previous: Getting Started/Getting the Code Index  






Dependencies

BIPS has the following dependencies for building from source:

  • libboost-system
  • libspdlog

Info: You may need to have POSIX Shared Memory enabled in your kernel.

Core

Please, install them using (in Debian-based systems):

sudo apt install -y     \
    libboost-system-dev \
    libspdlog-dev       \
    python3-dev

Documentation (optional)

For the documentation, consider the following dependencies:

  • doxygen
  • graphviz
  • java

Please, install them using (in Debian-based systems):

sudo apt install -y     \
    doxygen             \
    graphviz            \
    default-jre         \
    texlive-font-utils

Meson building system

At the building system level:

  • ninja-build
  • python3-pip
  • pkg-config
  • meson

Please, install them using (in Debian-based systems):

sudo apt install -y \
     python3        \
     python3-pip    \
     ninja-build    \
     pkg-config

The process should be similar in other systems, not based on Debian.

Then, install meson and other elements.

sudo pip3 install meson      \
                  pre-commit
pip3 install numpy

Building the project

Once fulfilled the dependencies, you can run a default compilation with:

meson build -Dnvsci_lib=/usr/lib/$(uname -m)-linux-gnu
ninja -C build
sudo ninja -C build install

For additional customization, you may refer to the following table of options:

`
Configure Option Description
-Denable-python=disabled Skip the Python API compilation. Enabled by default.
-Dwith-python-version=3.8 Sets the Python version. It takes '3' by default.
-Denable-docs=disabled Skip documentation generation. Enabled by default.
--prefix /usr Set the installation path of the library
Table 1. BIPS configuration options (Meson)

Examples are compiled in the build folder for testing purposes. You can run them in build/src/examples



Previous: Getting Started/Getting the Code Index