c语言 获取文件名的相对路径,c – 如何获取对应于给予dlopen的相对路径的绝对库文件名?...
在我的程序中,我有如下代码
/* libname may be a relative path */
void loadLib(char const *libname) {
void *handle = dlopen(libname);
/* ... */
dlclose(handle);
}
在/ * .. * /中,我需要读取内存映射文件/ proc / self / maps,以查找映射到libname的虚拟内存地址,并且我还需要打开库来查找其中的某些部分.为此,我需要通过在各种地方搜索dlopen找到的绝对名称(例如,在ldconfig缓存文件中).如何收到该文件名?
这是我终于结束了(是的,这是C代码,尽管如此,C标记对于这个问题是有道理的,因为dlopen与C和C一起使用,我的问题符合两者,POSIX指定它为C.).
boost::shared_ptr dl;
if(void *handle = dlopen(libfile,RTLD_LAZY)) {
dl.reset(handle,&dlclose);
} else {
printdlerr();
return -1;
}
/* update sofile to be an absolute file name */
{
struct link_map *map;
dlinfo(dl.get(),RTLD_DI_LINKMAP,&map);
if(!map) {
return -1;
}
char *real = realpath(map->l_name,NULL);
if(!real)
return -1;
sofile.reset(real,&free);
}
libfile是相对/纯文件名.该地图将产生一个非纯文件名(即不是foo.so,但可能是./foo.so).之后,我使用realpath来获取最终的绝对路径名.它工作很好!
c语言 获取文件名的相对路径,c – 如何获取对应于给予dlopen的相对路径的绝对库文件名?...相关推荐
- Python语言学习:创建/删除文件/文件夹、获取当前文件/文件夹路径(系统环境路径/目录)、获取当前文件夹下的所有子文件路径等代码(os系列用法)实现之详细攻略
Python语言学习:创建/删除文件/文件夹.获取当前文件/文件夹路径(系统环境路径/目录).获取当前文件夹下的所有子文件路径等代码(os系列用法)实现之详细攻略 目录 系统环境路径的设置 1.sys ...
- php获得服务器路径,PH获取当前url路径及服务器路径汇总 (url 获取当前路径 服务器路径),ph当前路径_PHP教程...
PH获取当前url路径及服务器路径汇总 (url 获取当前路径 服务器路径),ph当前路径 以下是整理的一些, php中获取路径的小知识, 希望对你有所帮助! 1,$_SERVER["QUE ...
- java获取文件绝对路径_java 如何获取一个文件的绝对路径。。。
你的位置: 问答吧 -> JSP -> 问题详情 java 如何获取一个文件的绝对路径... 例如 InputStream inStream=new FileInputStream(&qu ...
- python 如何获取文件路径_Python如何获取文件路径/目录
一.获取文件路径实现 1.1 获取当前文件路径 import os current_file_path = __file__ print(f"current_file_path: {curr ...
- c++ 工作路径介绍及获取
1)绝对路径:绝对路径是指目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径.例如:C:\windows\system32\cmd.exe 注意: 在不同系统的情况系 windows下是&q ...
- R语言使用pROC包绘制ROC曲线、获取最优阈值(threshold)及最优阈值对应的置信区间
R语言使用pROC包绘制ROC曲线并获取最佳阈值(threshold)及最佳阈值对应的置信区间 #ROC曲线 ROC(receiver operating characteristic curve)接 ...
- jsp 获取项目路径,java获取项目路径
1. 获取web服务器项目的真实物理路径 request.getSession().getServletContext().getRealPath("/"); 2. 相对路径的 ...
- PyQt5 技术篇-调用文件对话框获取文件、文件夹路径。文件对话框返回选中的多个文件路径
下面是常用的4个文件对话框动作: QFileDialog.getExistingDirectory() # 返回选中的文件夹路径 QFileDialog.getOpenFileName() # 返回选 ...
- Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名)
Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名) 目录
最新文章
- ipsec ***野蛮模式应用
- 最高65万美元!2021美大厂码农收入一览
- AWS S3宕机的启发: 云必须分散化
- anaconda下tensorflow安装遇到的问题记录及解决办法
- python颜色的字母代码,如何在python中更改特定印刷字母的颜色?
- Java 二维数组的初始化
- Webstorm常用快捷键备忘(Webstorm入门指南)
- x3m文件怎么转换成mp3_视频中的音频怎么单独提取出来转换成mp3格式
- mysql5.5的方言_mysql方言问题
- PowerDesigner新建模板
- 中文深度学习入门书:小白易入,课程、实战项目全有 | 五位导师联合出品
- 网管学习笔记-hybrid口配置
- 火狐浏览器中一个插件-httpfox
- STL之priority_queue 感觉讲的不错!!!呵呵
- PHP for windows VC9 VC6区别
- 均匀试验设计表格的问题
- 深度学习训练模型的硬件条件(点评)
- msvcr100.dll丢失的解决方法,哪种解决方法值得推荐?
- 【变色龙】app封装系统源码+互站在售封装系统
- EasyUI 日历实现日程提醒
热门文章
- QIIME 2教程. 13训练特征分类器TrainingFeatureClassifiers(2021.2)
- QIIME 2教程. 12数据筛选Filtering data(2021.2)
- 宏基因组蚂蚁森林合种——胡杨专车
- QIIME 2用户文档. 4人体各部位微生物组分析实战Moving Pictures(2018.11)
- Microbiome:宏基因组分箱流程MetaWRAP简介
- R语言ggplot2可视化时间序列数据:ggplot2可视化在时间轴上添加按月的箱图(boxplot)
- 什么是生存分析(survival analysis)?
- python使用fpdf生成pdf文件:配置多种语言字体写入多种文字
- python使用imbalanced-learn的SMOTENC方法进行上采样处理数据不平衡问题
- R计算赤信息指标(Akaike information criterion,AIC)