# Cross Compilation from aarch64 to x86

**URL:** <https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625>\
**Category:** Jetson Xavier NX\
**Tags:** compile, containers\
**Created:** [August 20, 2025, 6:49am UTC](https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625 "2025-08-20T06:49:49Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![talhatahir01022001](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@talhatahir01022001](https://forums.developer.nvidia.com/u/talhatahir01022001)\
**Post date:** [August 20, 2025, 6:49am UTC](https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625/1 "2025-08-20T06:49:49Z")

</div>

I’ve jetson Xavier NX board with me on which I’ve wrriten a piece of code. I’ve seen this [container](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/jetpack-linux-aarch64-crosscompile-x86) 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.

---

<div class="post-metadata">

**Author:** ![AastaLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/aastalll/32/14043_2.png) [@AastaLLL](https://forums.developer.nvidia.com/u/AastaLLL)\
**Post date:** [August 20, 2025, 9:27am UTC](https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625/3 "2025-08-20T09:27:40Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![talhatahir01022001](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@talhatahir01022001](https://forums.developer.nvidia.com/u/talhatahir01022001)\
**Post date:** [August 20, 2025, 11:29am UTC](https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625/4 "2025-08-20T11:29:24Z")

</div>

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:

1. Is there a way we can use libargus on x86 or is argus library specifically made for jetson boards?

2. 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

---

<div class="post-metadata">

**Author:** ![AastaLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/aastalll/32/14043_2.png) [@AastaLLL](https://forums.developer.nvidia.com/u/AastaLLL)\
**Post date:** [August 21, 2025, 8:23am UTC](https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625/5 "2025-08-21T08:23:21Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![system](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/system/32/68080_2.png) [@system](https://forums.developer.nvidia.com/u/system)\
**Post date:** [September 10, 2025, 1:40am UTC](https://forums.developer.nvidia.com/t/cross-compilation-from-aarch64-to-x86/342625/7 "2025-09-10T01:40:19Z")

</div>

Closed on September 10, 2025, 1:40am UTC

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.
