petalinux 安装Armadillo

https://gitlab.com/conradsnicta/armadillo-code/-/tree/9.900.x?utm_source=chatgpt.com

可以将上述内容合并为一条命令,通过反斜杠 \ 和换行符保持可读性。以下是优化后的格式:

sh 复制代码
cmake ..\ -DCMAKE_TOOLCHAIN_FILE=../Toolchain-arm64.cmake \
         -DCMAKE_INSTALL_PREFIX=/petalinux/Armadillo/build/install \
         -DCMAKE_BUILD_TYPE=Release \
         -DARMA_USE_WRAPPER=ON \
         -DBLAS_LIBRARIES=/petalinux/OpenBLAS/build/install/lib/libopenblas.so \
         -DLAPACK_LIBRARIES=/petalinux/OpenBLAS/build/install/lib/libopenblas.so \
         -DCMAKE_INCLUDE_PATH=/petalinux/OpenBLAS/build/install/include \
         -DCMAKE_LIBRARY_PATH=/petalinux/OpenBLAS/build/install/lib

注意事项

注意事项

代码块示例(遵循格式规范):

cmake 复制代码
# 示例代码块
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
  • 每行参数对齐,便于阅读和修改。
  • 反斜杠 \ 表示命令延续到下一行。
  • 确保路径和文件名与实际环境一致。
  • Toolchain-arm64.cmake用opencv的就可以

配置交叉编译工具链

SET(CMAKE_SYSTEM_NAME Linux)SET(CMAKE_SYSTEM_PROCESSOR aarch64) 用于指定目标系统为 Linux,处理器架构为 AArch64。

指定交叉编译器路径

CMAKE_C_COMPILERCMAKE_CXX_COMPILER 分别设置 C 和 C++ 交叉编译器的绝对路径。

示例路径为 /opt/petalinux/2020.2/sysroots/x86_64-petalinux-linux/usr/bin/aarch64-xilinx-linux/aarch64-xilinx-linux-gcc 和对应的 g++ 路径。

配置 sysroot 环境

CMAKE_FIND_ROOT_PATHCMAKE_SYSROOT 均指向目标系统的根文件系统路径 /opt/petalinux/2020.2/sysroots/aarch64-xilinx-linux,确保编译器能正确找到头文件和库。

设置搜索规则

  • CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER:不在 sysroot 中搜索可执行程序。
  • CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY:仅在 sysroot 中搜索库文件。
  • CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY:仅在 sysroot 中搜索头文件。
  • CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY:仅在 sysroot 中搜索 CMake 包。
  • 路径需根据实际 Petalinux 安装目录调整,确保与本地环境一致。
  • 交叉编译器版本需与目标系统兼容。
  • 若需调试,可添加 SET(CMAKE_BUILD_TYPE Debug) 配置调试符号。

配置交叉编译工具链

SET(CMAKE_SYSTEM_NAME Linux)SET(CMAKE_SYSTEM_PROCESSOR aarch64) 用于指定目标系统为 Linux,处理器架构为 AArch64。

指定交叉编译器路径

CMAKE_C_COMPILERCMAKE_CXX_COMPILER 分别设置 C 和 C++ 交叉编译器的绝对路径。

示例路径为 /opt/petalinux/2020.2/sysroots/x86_64-petalinux-linux/usr/bin/aarch64-xilinx-linux/aarch64-xilinx-linux-gcc 和对应的 g++ 路径。

配置 sysroot 环境

CMAKE_FIND_ROOT_PATHCMAKE_SYSROOT 均指向目标系统的根文件系统路径 /opt/petalinux/2020.2/sysroots/aarch64-xilinx-linux,确保编译器能正确找到头文件和库。

设置搜索规则

CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER:不在 sysroot 中搜索可执行程序。 CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY:仅在 sysroot 中搜索库文件。 CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY:仅在 sysroot 中搜索头文件。 CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY:仅在 sysroot 中搜索 CMake 包。

注意事项

代码块示例(遵循格式规范):

cmake 复制代码
# 示例代码块
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
  • 路径需根据实际 Petalinux 安装目录调整,确保与本地环境一致。
  • 交叉编译器版本需与目标系统兼容。
  • 若需调试,可添加 SET(CMAKE_BUILD_TYPE Debug) 配置调试符号。
相关推荐
zwtahql39 分钟前
ubuntu远程ssh连接
linux·ubuntu·ssh
南烟斋..41 分钟前
嵌入式系统(51单片机)核心外设详解:UART通信与DS18B20温度采集
linux·运维·网络
不染尘.42 分钟前
Linux的rpm与yum
linux·mysql·jdk·centos·tomcat·ssh
e***985742 分钟前
跨平台虚拟机网络故障排查指南
运维·网络
重生之绝世牛码1 小时前
Linux软件安装 —— SSH免密登录
大数据·linux·运维·ssh·软件安装·免密登录
AI殉道师1 小时前
Vercel 重磅发布 agent-browser:AI Agent 浏览器自动化的新纪元来了
运维·人工智能·自动化
计算机C9硕士_算法工程师1 小时前
基于深度学习风力叶片缺陷检测系统 无人机自动巡检风电场 - 风电运维智能诊断平台 - 缺陷生命周期追踪系统
运维·深度学习·无人机
Kiyra1 小时前
阅读 Netty 源码关于 NioEventLoop 和 Channel 初始化部分的思考
运维·服务器·前端
初听于你1 小时前
IP地址与路由器地址
linux·运维·服务器·网络·tcp/ip·计算机网络·智能路由器
duxingzhe1032 小时前
Unix Network Programming Episode 105
服务器·unix