当前位置: 首页 > ds >正文

杂记10---ldd获取依赖so名称并导出txt文件

背景:算法平台迁移时,涉及一些具体依赖库导出,方便编写cmakelist。

工具名称extract_so.sh

#!/bin/bash# 参数检查
if [ $# -lt 2 ]; thenecho "用法: $0 <目标库路径> <关键字> [输出文件名]eg: ./extract_so.sh mot_start/bin/test opencv ./tmp/tmp_so.txt"exit 1
fiTARGET_SO="$1"
KEYWORD="$2"
OUTPUT_FILE="${3:-filtered_so_list.txt}"  # 默认输出文件名# 检查目标文件是否存在
if [ ! -f "$TARGET_SO" ]; thenecho "错误: 文件 $TARGET_SO 不存在"exit 1
fi# # 使用ldd获取依赖,筛选包含关键字的so名,并保存
# ldd "$TARGET_SO" | grep "$KEYWORD" | awk '{print $1}' > "$OUTPUT_FILE"
# 提取匹配的库名,去除lib前缀和.so后缀及版本号
ldd "$TARGET_SO" | grep "$KEYWORD" | awk '{print $1}' \
| sed -E 's/^lib//' \
| sed -E 's/\.so(\.[0-9]+)*$//' \
> "$OUTPUT_FILE"echo "已保存匹配结果到: $OUTPUT_FILE"

工具权限添加

chmod +x extract_so.sh

使用例子

./extract_so.sh mot_start/bin/test pcl ./tmp/tmp_so.txt

保存到文件tmp_so.txt,个人程序依赖导出结果如下

pcl_segmentation
pcl_features
pcl_visualization
pcl_common
pcl_ml
pcl_filters
pcl_search
pcl_sample_consensus
pcl_kdtree
pcl_octree
pcl_io
pcl_io_ply

###################
好记性不如烂笔头
积跬步期千里
觉得不错的话,记得点赞收藏

http://www.xdnf.cn/news/7995.html

相关文章:

  • 数字电子技术基础(六十二)——使用Multisim软件绘制边沿触发的D触发器和JK触发器
  • 2025年 PMP 6月 8月 专题知识
  • Python数据分析基础
  • LangChain入门和应用#1
  • 工商总局可视化模版-Echarts的纯HTML源码
  • CMake跨平台编译生成:从理论到实战
  • 现代计算机图形学Games101入门笔记(二十一)
  • 【Linux安装与维护】
  • 深入理解C#实例构造函数:对象初始化的关键
  • 动态规划3、悟到核心
  • 【DB2】SQL1639N 处理
  • 建立java项目
  • 免费iOS签名的能使用吗?
  • 【钱包协议】:WalletConnect 详解
  • 一步步解析 HTTPS
  • 网络安全管理之钓鱼演练应急预案
  • PCB设计教程【入门篇】——电路分析基础-元件数据手册
  • Nginx核心服务
  • 【机器学习基础】机器学习与深度学习概述 算法入门指南
  • R语言速查表
  • 什么是瞬态动力学?
  • 从芯片互连到机器人革命:英伟达双线出击,NVLink开放生态+GR00T模型定义AI计算新时代
  • ILRuntime中实现OSA
  • CAU人工智能class3 优化器
  • Python MD5加密算法脚本
  • Java线程池调优与实践经验
  • JavaScript-DOM-02
  • DS18B20 温度传感器实验探索与实践分享​
  • 深度学习Y8周:yolov8.yaml文件解读
  • Leetcode-3 判断根结点是否等于子结点之和