如何在Ubuntu平台交叉编译Jetson CUDA/C++代码

Ubuntu交叉编译Jetson arm64程序实战指南 交叉编译是嵌入式Linux开发的基础技术,指在x86_64主机上生成ARM64目标平台可执行文件,其核心原理在于分离编译时环境(host)与运行时环境(target),解决资源受限设备(如Jetson)本地构建效率低、内存溢出、温度过高及ABI不兼容等工程瓶颈。该技术具备显著技术价值:提升编译速度5–10倍、减小二进制体积、保障CUDA/VPI等专有API符号一致性,并支撑CI/CD自动化部署。典型应用场景包括机器人SLAM节点、边缘AI推理服务、工业视觉应用等需面向NVIDIA Jetson系列(Orin 阅读详情
1. 安装docker
sudo apt  install docker.io

2.安装qemu
sudo apt install qemu-user-static
sudo update-binfmts --display

3. 安装docker环境,注意jetpack的版本
sudo docker pull nvcr.io/nvidia/l4t-jetpack:r35.3.1

4.进入docker虚拟环境,指定目录
sudo docker run --platform linux/arm64 -it --rm -v /mnt/d/gpu_ai_isp/docker_jetson:/ai_isp nvcr.io/nvidia/l4t-jetpack:r35.3.1

5.安装cmake和libtbb-dev
sudo apt-get update
sudo apt-get install cmake
sudo apt install libtbb-dev

6. 进入目录,执行cmake并make
cd /ai_isp
mkdir build
cd build
cmake .
make

llama.cpp编译实战:从CPU到CUDA/Vulkan/Metal的完整指南 大语言模型的本地部署与边缘计算正成为AI工程化的重要方向,而高效运行这些模型的核心在于推理框架的编译与优化。llama.cpp作为一个轻量级纯C/C++推理框架,能够在CPU、GPU乃至嵌入式设备上运行量化后的模型,其编译过程涉及指令集选择、异构加速后端(CUDA/Vulkan/Metal)的启用以及数学库的集成。合理的编译配置不仅决定了模型的推理性能,也直接影响部署环境的兼容性与资源占用。针对不同硬件平台(如Ubuntu、Windows、macOS、Jetson)制定编译策略,可以有效提升模型加载速度与生 阅读详情

相关推荐

【ARM-Linux开发】【CUDA开发】NVIDIA Jetson TX2 进阶:Nsight Eclipse Edition

嵌入式平台:NVIDIA Jetson TX2嵌入式系统:Ubuntu16.04虚拟机系统:Ubuntu14.04 一、NSight简介     Jetpack开发工具为人工智能提供了一整套软件架构,包括代码示例(Sample Code)、NSight开发工具(NSight Developer Tools)。同时也为我们提供了丰富的多媒体API(Multimedia

ZhangPY的专栏 5478

ubuntu搭建aarch64 cuda交叉编译环境记录

jetson xavier nx平台交叉编译环境

yuleaf_csdn的博客 3826

jetson TX2环境搭建

个人总结的jetson TX1/TX2开发板使用记录,中间验证了一些基础功能。

Nsight Eclipse的opencv+cuda的交叉编译,在TX2已验证可行

nsight eclipse edition的跨平台使用,opencv语言和cuda语言混合编程,在主机交叉编译后可在jetson TX2上直接运行,供大家参考

coldsun1982的博客 6547

Jetson TX1开发:使用Nsight Eclipse Edition新建CUDA C工程进行交叉编译.docx

纯手工打字编写的教程:使用Nsight Eclipse Edition上新建CUDA C工程,用JetPack自带的例程在Jetson TX1上进行交叉编译。 PC平台:Ubuntu 16.04(虚拟机) 开发板:Jetson TX1(工具包版本:JetPack 4.6) 其他开发板和版本可参考

jetson-utils:适用于NVIDIA Jetson的C ++ Python Linux实用程序包装-相机,编解码器,CUDA,GStreamer,HID,OpenGLXGL

jetson-utils 适用于NVIDIA Jetson TX1 / TX2的C / C ++包装Linux实用程序-相机,编解码器,HID,GStreamer,CUDA,OpenGL / XGL

ubuntu开发环境配置(cuda、cudnn、ffmpeg、opencv、darknet-master、TensorRT、python、pytorch、MySql、qt(armv8交叉编译))

ubuntu开发环境配置(cuda、cudnn、ffmpeg、opencv、darknet-master、TensorRT、python、pytorch、MySql)

heqingchun16的博客 3690

Badcase归因分析“四部曲”

badcase是业内的专业名词,简单解释一下。bad是坏,case是案例,说白了就是模型或者具体规则无法很好预测的那些案例。以分类模型为例,本来一个样本应该是负类的,结果预测为正类,那这个样本就能被称为bad case。那相对应的就是good case就是优秀案例。

qq_25438419的博客 3517

Linux下将cuda静态库编译到动态库中

电脑上需要的环境是: 1、电脑有支持CUDA的NVIDIA的GPU 2、安装了CUDA toolkit的开发包(libcudart.so的动态库是在/usr/local/cuda/lib*中) 从CUDA5.5开始,支持static library。如果查看/usr/local/cuda/lib64下 参考:linxu下CUDA静态库-下 ...

juluwangriyue的博客 682

地瓜机器人RDK Studio使用入门教程

不知道大家在使用AI开发板的时候有没有遇到过板子官方镜像占据空间大难以保存,想要的时候找不到?官方示例项目久而久之便难以找寻?首次登陆开发板连接网络还需要准备显示器键盘鼠标外设繁杂?…为了解决平时开发过程中遇到的种种不便利问题,地瓜机器人创新的推出了RDK Studio这一官方开发者软件,使智能机器人开发迎来新纪元!通过这一软件极大降低了机器人的开发门槛,哪怕是零基础的用户亦可轻松上手RDK系列板卡!

xiongqi123123的博客 3424

51单片机STC8G1K08驱动ws2812记录

使用51单片机控制17个2812灯,这里选择STC8芯片,最大频率可以达到35M,参考网上的各种文章案例,使用定时器做的时候实测做不到规格书要求的245-345ns,STC8G1K08不带PWM,所以只能使用nop来做,好在单片机在这里只有做编程灯的功能,省略测试过程,下面是程序,使用的是24MHz内部晶振 //设置一个灯珠 void SendOnePix(unsigned char *ptr) { unsigned char i,j; unsigned char temp; fo...

的博客 7318

【jetson交叉编译(1)】nvidia jetson 系列开发板交叉编译方法,CUDA依赖程序

这个时候就需要进入aarch64 ubuntu环境安装对应的库,并将安装后的头文件,库文件拷贝到/usr/aarch64-linux-gnu/lib目录下(或/usr/aarch64-linux-gnu/usr/lib,用于将后面拷贝的和原始带的库进行区分),头文件放到/usr/aarch64-linux-gnu/include/中。打包已经正常运行的xavier系统的根文件系统,制作docker镜像,可以免去一些软件的安装,直接就可以进行应用程序的编译。已经正常运行的jetson 系统上打包根文件系统。

AbiUni(YY熊) 2920

Intouch间接变量(扩展)

间接变量只是Intouch提供给开发者的便捷方式之一,并不是所有情况都一定要使用间接变量,有时候用条件语句或者内存变量的方式也能起到类似的作用。

weixin_41571357的博客 2167

ubuntu22.04 搭建 NVIDIA Jetson交叉编译的eclipse开发环境

NVIDIA Jetson交叉编译开发环境搭建

YYRAN_ZZU的博客 1765

Spring AI 项目实战(十八):Spring Boot + AI + Vue3 + OSS + DashScope 实现高效语音识别系统(附完整源码)

本文介绍基于 Spring Boot AI 集成阿里云 OSS 与 DashScope 语音识别 API 的高效语音识别系统。该系统通过云端存储音频文件,解决传统本地存储的性能瓶颈与存储压力,支持同步 / 异步语音转文本,实现文件自动生命周期管理。文中详述技术选型、架构设计、核心代码实现(含前后端及配置)、部署流程,展现其高并发处理、可靠文件管理能力,适用于客服、教育等企业级场景,为语音识别应用提供实用解决方案。

博客 1537

【教程4>第10章>第13节】基于FPGA的图像双边滤波开发——单通道双边滤波Verilog实现

本文介绍了基于Vivado 2022.2的单通道高斯滤波FPGA实现方案。主要内容包括:1)采用3×3窗口像素提取、高斯权值计算、exp指数运算等模块构建双边滤波系统;2)详细分析了Verilog HDL实现的顶层设计文件,包含窗口数据生成、指数计算、混合权重、归一化处理等关键模块;3)展示了图像双边滤波器的RTL结构图。该设计为后续实现RGB三通道图像高斯滤波及MATLAB联合仿真奠定了基础。

FPGA/MATLAB学习教程/源码/项目合作开发 261

Jetson Orin NX 交叉编译环境搭建——基于 WSL2 的 CUDA/TensorRT/OpenCV 全流程

在 Windows WSL2 Ubuntu 22.04 上,通过从 Jetson Orin NX(JetPack 6.2.2)导出完整 Sysroot,结合 aarch64 交叉编译器与主机版 CUDA Toolkit,构建支持 C++/CUDA/TensorRT/OpenCV 的交叉编译环境。关键步骤包括:安装交叉编译工具链、部署 x86_64 nvcc、打包并修复 Jetson 系统根文件,最后配置 CMake toolchain 完成跨平台编译,实现高效开发与部署。

weixin_43293172的博客 368

AutoSAR从0开始实战 --- 目录

​​​​​​本专栏是全网最真实的AutoSAR实战专栏,博主将从一个0基础小白的身份来讲解AutoSAR工具的配置,以及相应代码的讲解。

wj博客 1726

Jetson交叉编译实战:Ubuntu宿主机构建可部署aarch64程序

交叉编译是嵌入式AI开发的核心技术,指在x86_64主机上生成目标ARM平台(如aarch64)可执行程序的过程。其原理依赖于工具链、sysroot、ABI对齐与链接时重定位等关键机制。技术价值在于大幅提升Jetson系列(Orin/Xavier)开发效率,规避板端编译的高耗时、高发热与OOM风险。典型应用场景涵盖边缘AI推理、SLAM、工业质检等需CUDA/TensorRT/Opencv深度集成的项目。本文聚焦Ubuntu系统下Jetson平台的生产级交叉编译实践,深入解析aarch64-linux-gn

weixin_34166847的博客 296

WPF中使用TreeView封装组合控件TreeView+DataGrid

wpf的功能非常强大,很多控件都是原生的,但是要使用TreeView+DataGrid的组合,就需要我们自己去封装实现。功能如上图所示, 目前基本上把常用的样式都实现了,购买源码后,可以自行修改样式。本文源码效果如下,(搞了好几天,的确有难度,所以源码也收费,便宜,赚点辛苦费)第一种:技术的选择是TreeView(也就是本文的演示)。这2个图都是第三方控件自带的,并且都是收费使用。首先说明一下,实现上面的效果,有3种方法。本文演示的是使用TreeView的实现。第二种:技术的选择是DataGrid。

故里2130 1649

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

在Jetson Orin Nano/NX 8GB上部署优化版llama.cpp:Jetson-Claw实战指南

大语言模型(LLM)的本地部署是当前边缘计算和AI应用的热点方向,其核心原理在于通过模型量化、硬件加速等技术,在资源受限的设备上实现高效推理。对于NVIDIA Jetson系列边缘AI平台,尤其是Orin Nano/NX 8GB这类共享内存的设备,关键在于平衡模型性能与内存占用。Jetson-Claw项目正是针对这一挑战的工程实践方案,它基于llama.cpp框架,为Jetson ARM架构预配置了CUDA后端优化和编译选项,大幅简化了部署流程。通过采用Q4_K_M或Q5_K_M等量化策略的GGUF格式模型

weixin_33888907的博客 450

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

MXNet 在 NVIDIA Jetson 上的安装与部署:从源码构建、交叉编译到 GPU 推理验证

本文是一份面向嵌入式与边缘计算场景的 MXNet Jetson 安装实战指南,完整覆盖在 Jetson Nano、TX1、TX2、Xavier NX、AGX Xavier 等 AArch64 平台上的三种安装路径:源码手动构建、Docker 交叉编译、以及第三方预编译 wheel,并深入解析 `make/config_jetson.mk` 对应的 CUDA 架构配置、`ci/build.py` 的

gitblog_01081的博客 472

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

llama.cpp编译全指南:从x86到Jetson AGX Orin的避坑实践

随着大模型推理需求从云端下沉到边缘设备,如何在有限的计算资源下高效部署成为工程师关注的核心问题。llama.cpp作为纯C++实现的推理框架,依托GGML张量库,支持CUDA、Vulkan、CPU等多种后端,凭借依赖轻、可控性强的特点,成为边缘AI部署的热门选择。在编译过程中,CMake配置、GPU后端选型以及目标架构参数(如Jetson AGX Orin的CMAKE_CUDA_ARCHITECTURES)往往决定成败,稍有不慎就可能陷入内存溢出或性能低下的困境。本文从x86桌面到ARM边缘设备,系统梳理l

weixin_34032792的博客 370

TensorRT安装与测试实战:从trtexec转换到Jetson端到端推理

TensorRT是NVIDIA GPU上实现高性能AI模型推理的核心运行时,其本质是将ONNX等中间表示编译为高度优化的CUDA引擎(engine文件)。理解其工作原理需把握三个关键:依赖版本强耦合(驱动/CUDA/cuDNN)、编译期优化(FP16/INT8/tactic搜索)与运行时资源管理(显存分配、stream调度)。技术价值体现在显著提升吞吐量、降低延迟并释放边缘硬件(如Jetson Orin、A10)算力。典型应用场景覆盖车载感知(PointPillars)、智能座舱视觉及AI边缘盒子部署。本文

weixin_34239592的博客 387

ros2_humble_foxy_x86交叉编译环境搭建

ros2 humble foxy交叉编译环境搭建

u011326325的博客 1438
上一篇: YOLOv8/YOLO11加载模型、推理、解析结果并绘制的标准例子
下一篇: VTK自带例子的简单说明及参数
dotphoenix
博客等级 码龄19年 208粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值