29 @page cross_platform_support Setting Up Cross-Platform Support
31 @note The following samples
do not yet support cross-compilation:
36 This section describes how to set up the cross-compilation environment
for
37 Multimedia API on the host system.
38 It uses the following terms:
39 - _Host system_ means the x86 based server where you are going to
do cross-compilation.
40 - _Jetson board_ means the target board where your samples will run.
42 The following steps should be executed **on your Jetson board**:
44 1. If you have not already set up a complete compilation environment on your
45 Jetson board, please
do so now. For more information, see @ref mmapi_build.
47 Before proceeding, you must ensure you can build samples natively without
48 issues on your Jetson board.
50 2. Still on the Jetson board, set up Samba to mount the target rootfs from your
53 - Install and start Samba with the following commands:
55 $ sudo apt-
get install samba
57 $ sudo smbpasswd -a root
58 - Add the following configurations to `/etc/samba/smb.conf`.
61 comment= Rootfs
for Tegra
68 $ sudo service smbd restart
69 This step ensures you can mount the target rootfs from your host system,
70 which also ensures the sample can link everything needed through the mount node.
72 3. Create symbolic links with the following commands:
75 $ sudo ln -sf aarch64-linux-gnu/crt1.o crt1.o
76 $ sudo ln -sf aarch64-linux-gnu/crti.o crti.o
77 $ sudo ln -sf aarch64-linux-gnu/crtn.o crtn.o
78 $ cd /usr/lib/aarch64-linux-gnu/
79 $ sudo ln -sf ../../../lib/aarch64-linux-gnu/libdl.so.2 libdl.so
81 The following steps are executed on your **host system**:
83 1. Mount and export the target rootfs on your Jetson board with the following commands:
87 $ sudo mount -t cifs -o
"username=root,password=nvidia"
88 $ export TARGET_ROOTFS=$HOME/jetson
89 The username must be root and the password is set previously when you install Samba.
90 The 10.19.225.125 is the IP address of your Jetson board.
92 2. Export the path of cross-compiler tool chain with the following command:
94 $ export PATH=$PATH:<CROSS_COMPILER_PATH>/bin
95 $ export CROSS_COMPILE=aarch64-unknown-linux-gnu-
97 Replace `<CROSS_COMPILER_PATH>` with the correct path of your tool chain.
99 You can download the prebuilt tool chain from the following website,
100 or you can use your own cross-compiler. Because
this release is tested with
101 version GCC 4.8.5, NVIDIA recommends
using that version.
105 3. Navigate to the directory
for a sample and run `make` to cross-compile.