I’ve jetson Xavier NX board with me on which I’ve wrriten a piece of code. I’ve seen this container which cross compiles cuda program from x86 to aarch64. But is the reverse possible i.e., is their a toolchain through which I can cross compile to x86 as I want to send a binary to someone on x86 machine. If there’s no toolchain available, is their any other way to send my working binary as I don’t wanna share my src code.
Hi,
Unfortunately, we don’t support such a use case.
Are you able to compile the source on an x86 device before sharing it?
Thanks.
Thanks!!
I’ve 2 versions of my code.
version 1: It is a simple cuda program which takes in a raw image file, applies debayer on it using GPU (my cuda program) and saves the file back.
version 2: It uses Libargus and EGL to capture raw image stream, apply debayer on GPU and display the output in result window.
I’m able to compile both versions 1 and 2 on aarch64 Xavier NX Jetson Board.
I’m able to compile version 1 on x86 but can’t compile version 2 as I don’t have argus, EGL etc. libraries on my x86 as of now.
Questions:
-
Is there a way we can use libargus on x86 or is argus library specifically made for jetson boards?
-
This is purely for learning purposes as I already have aarch64 binary of version 2 with me. I’m trying to cross compile version 2 from x86 to aarach64 (Even though I already have version 2 compiled on my jetson board but I’m testing weather I can also cross-compile version 2 from x86 using the cross compiler container). Inside the cross compiler container there are aarch64 libraries available i.e., argus, EGL libraries available inside the targetfs directory. Can I use those libraries inside my container along with my local x86 nvcc compiler and aarch64-linux-gnu- cross compiler to cross-compile version 2 for aarch64. Something like this:
/usr/local/cuda/bin nvcc -ccbin aarch64-linux-gnu- -L /l4t/targetfs/usr/lib/aarch64-linux-gnu
I’m asking question 2 because I’m able to compile the jetson_multi_media_samples using the commands given in the container documentation:
cd /l4t/targetfs/usr/src/jetson_multimedia_api
export CROSS_COMPILE=aarch64-linux-gnu-
export TARGET_ROOTFS=/l4t/targetfs/
make
But the documentation doesn’t tell how to compile the argus samples inside the jetson multimedia API directory (/l4t/targetfs/usr/src/jetson_multimedia_api/argus). argus directory has a CMakeLists.txt file in it but no aarch64_toolchain.cmake, hence I can’t cross compile argus samples or the argus camera app
Hi,
Argus is a Jetson-specific library, so it is not available on the desktop environment.
jetson_multimedia_api doesn’t support x86 environment either.
Thanks.