To compile the samples or any user code using the NVIDIA® DriveWorks, you must use cross-compilation from a Linux host. For this, in addition to the requirements above, you must have the following additional components:
On the host system, install the CUDA cross-compilation libraries.
apt-get update
may cause some warnings. To prevent these warnings, edit /etc/apt/sources.list
and files under /etc/apt/sources.list.d/
and add [arch=amd64,i386]
after deb
and before the URL to each line starting with deb
. Ensure you specify amd64
and not arm64
. For example, amend: Configure the location of the NVIDIA DRIVE OS SDK/PDK:
Set the environment variable DriveSDK
to point to the SDK/PDK folders:
or define this location as a cmake
command line argument:
Cross-compile.
To streamline the deployment process, you can set the cmake
definitions as environment variables.
The build folder can be created anywhere in the system, however if it is outside of your home folder, you will probably need to run the commands with sudo
.
After cross-compiling your custom NVIDIA DriveWorks SDK sample on the Linux host system, you must load it to the target platform.
You can use automatic upload (recommended) or manually upload it.
The package-based installation will install libraries, binaries and resources into /usr/local/driveworks-4.0
. However, if you build a custom NVIDIA DriveWorks SDK sample, you should upload those files to a separate directory such as:
The above path assumes your user name is "nvidia". Of course, you would use a name more appropriate to your situation. Using this path rather than /usr/local/<name>
avoids security constraints that can make the upload process more difficult.
rpath
for the binaries is set only during the make install
step. As such, NVIDIA discourages copying binaries to the board without performing the make install
step because this could] result in undefined behavior.An upload
target is provided as a convenience. Invoking this target uses rsync
to sync the builds to a specified location on the device. target
is set to depend on building and packaging.
The following cmake parameters configure the upload
target:
VIBRANTE_HOST
: IP address of the board, the default value is 192.168.0.10
for NVIDIA DRIVE Xavier™ A and 192.168.0.11
for NVIDIA DRIVE Xavier B.VIBRANTE_INSTALL_PATH
: destination folder of the compiled products. The default value is /home/nvidia/driveworks
.VIBRANTE_USER
: Specifies the user that will be used to rsync
the binaries. The default value is nvidia
.VIBRANTE_PASSWORD
: Password for VIBRANTE_USER
. The default value is nvidia
.VIBRANTE_PORT
: Port on which ssh
is listening on the target board. The default is 22
.On the Linux system, enter:
VIBRANTE_HOST
parameter is set to the IP address of a running NVIDIA DRIVE platform board, users can call the upload target to rsync
the build folder with a folder on the board.When you manually upload the sample to the target device, you copy the cross- compiled binaries to a device with IP DPX_IP
as user nvidia
.
On the host system, execute: