linux 下获得so的路径

原创 2016年08月29日 09:04:02
#include <link.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
//#include <dlfcn.h>

void getSOPath(void *fun)
{
    char *pDest;
    Dl_info dlinfo;
    int ret=0;

    ret = dladdr(fun,&dlinfo);
    if(!ret)
    {
        g_szDllPath[0]='\0' ;
    }
    else
    {
        strncpy(g_szDllPath, dlinfo.dli_fname,_MAX_PATH);
        pDest = strrchr(g_szDllPath, '/');
        if(pDest != NULL)
            pDest[1] = '\0';
        else
        {
            pDest = strrchr(g_szDllPath, '\\');
            if(pDest != NULL)
            {
                pDest[1] = '\0';
            }
            else
            {
                memcpy(g_szDllPath,"./",sizeof("./"));
            }
        }

    }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

dladdr - 获取某个地址的符号信息

名称 dladdr() - 获取某个地址的符号信息 概要 cc [ flag]... cfile ... -ldl [library]... #include dlfcn.h int dladdr(v...
  • dragon101788
  • dragon101788
  • 2014年01月22日 20:57
  • 7615

linux下追踪函数调用堆栈

原址http://blog.chinaunix.net/u1/35065/showart_2147701.html 一般察看函数运行时堆栈的方法是使用GDB之类的外部调试器,但是,有些时候为了分析程序...
  • qqwx_1986
  • qqwx_1986
  • 2010年10月15日 11:30
  • 8292

linux中动态加载动态库的方法

功能:打开一个动态链接库   包含头文件:   #include   函数定义: void * dlopen( const char * pathname, int mode);  ...
  • cherish_2012
  • cherish_2012
  • 2014年12月02日 00:35
  • 8425

Linux动态库函数介绍

头文件#include   加载动态库void *dlopen(const char *filename, int flag);flag的可能值:l        RTLD_LAZYl        ...
  • walkingman321
  • walkingman321
  • 2011年01月05日 21:35
  • 4185

Linux下so动态库查看与运行时搜索路径的设置

ldd命令linux 下可以使用ldd查看可执行文件所需要的动态链接库(*.so)。 注:下文用so代替动态链接库文件。// 举个例子 ~$ ldd /bin/ls linux-vdso.s...
  • renwotao2009
  • renwotao2009
  • 2016年05月14日 12:17
  • 10967

在linux程序里面,知道一个函数地址,改函数是属于某个动态库的,怎么样得到这个动态库的全路径名(转)

gnu的扩展函数dladdr可以做到你所要的,man   dladdr可以查到帮助。     另外dl_iterate_phdr可以查到当前进程所装在的所有符号,每查到一个就会调用你指定的回调函数。 ...
  • shark0001
  • shark0001
  • 2008年07月11日 14:54
  • 4735

Linux如何查找动态库

1.  静态库和动态库的基本概念静 态库,是在可执行程序连接时就已经加入到执行码中,在物理上成为执行程序的一部分;使用静态库编译的程序运行时无需该库文件支持,哪里都可以用,但是生成 的可执行文件较...
  • KSCHOW
  • KSCHOW
  • 2011年01月08日 23:17
  • 476

linux下编译rtmpdump

编译rtmpdump 下载地址:
  • u014037733
  • u014037733
  • 2014年04月05日 11:36
  • 3393

linux查看so文件的一些信息命令

nm用来列出目标文件的符号清单. ar命令可以用来创建、修改库,也可以从库中提出单个模块。 objdump:显示目标文件中的详细信息 objdump -d ,可以查看这些工具究竟...
  • zhoujj303030
  • zhoujj303030
  • 2014年07月25日 13:58
  • 6961

Linux动态库(.so)搜索路径(目录)设置方法

在Linux 中,动态库的搜索路径除了默认的搜索路径外,还可通过三种方法来指定:方法一:在配置文件/etc/ld.so.conf中指定动态库搜索路径;方法二:通过环境变量LD_LIBRARY_PATH...
  • tttyd
  • tttyd
  • 2013年03月26日 16:06
  • 3708
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux 下获得so的路径
举报原因:
原因补充:

(最多只允许输入30个字)