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_COMPILER 和 CMAKE_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_PATH 和 CMAKE_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_COMPILER 和 CMAKE_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_PATH 和 CMAKE_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) 配置调试符号。
相关推荐
阳光九叶草LXGZXJ10 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
奔跑的大白啊10 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
黄大刀11 小时前
DataPulse一款开箱即用的SCADA(四)-历史记录
运维·scada·动环
正在走向自律12 小时前
AI数据分析与可视化:从基础到应用实践
服务器·人工智能·python·机器学习·数据分析·pandas
OnlineProxy13 小时前
亚马逊多账号运营:如何在规避“关联封号”风险的同时实现电商规模化扩张
服务器·数据库·redis
归秋14213 小时前
2026 企业 AI 办公工具选型指南:从评估框架到产品适配
大数据·运维·人工智能
Android系统攻城狮13 小时前
Linux Gstreamer深度解析之gst_audio_encoder_set_frame_max调用流程与实战(六十一)
android·linux·运维·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
H.莓飛14 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
91刘仁德14 小时前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip
辻弋20114 小时前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑