精华内容
下载资源
问答
  • linux下如何查找函数所在的库文件

    千次阅读 2016-04-28 22:25:21
    linux 内核(驱动)常用函数 ---- http://blog.csdn.net/stephen_yin/article/details/6576379 1、man htons,里面讲的是arpa/inet.h; 2、假设你用的是RPM类型的系统:rpm -qa --...

    原文地址::http://blog.csdn.net/iyangyi/article/details/5873375



    相关文章

    1、linux 内核(驱动)常用函数----http://blog.csdn.net/stephen_yin/article/details/6576379





    1、man htons,里面讲的是arpa/inet.h;
    2、假设你用的是RPM类型的系统:rpm -qa --filesbypkg | grep arpa/inet.h,你就看见了一个或者几个包提供这个文件,现在我看到的是glibc-headers(RHEL5)
    3、貌似这个glibc-headers只是个包含头文件的软件包,看看其他类似的软件包是什么:rpm -qa | grep glibc
    4、我看见了glibc,glibc-devel,glibc-common,觉得glibc-devel肯定是提供.a(静态链接)的
    5、rpm -q --filesbypkg glibc-devel| grep /.a$ | awk '{print $2}' |xargs grep htons找到所有带htons的静态库文件
    6、只有一个:/usr/lib/libc.a
    7、如果有好几个的话,用objdump -x看看符号表 



    有一些常识或者说平时的积累是必要的,终究常用的库很少。

    当我遇到一个函数不知道所属的库的时候,我会先找到头文件所属的包,然后看看那个包(或者相关包)的.a或者.so文件有哪些,然后:

    objdump -x 库文件 | grep 函数名

    确认函数名是定义而不是引用以后,就知道需要链接这个库了。

    展开全文
  • linux 设备常用OF函数

    千次阅读 2020-07-16 14:24:47
    Linux内核使用device_node结构体来描述一个节点,此结构体定义在文件include/linux/of.h 1.1. of_find_node_by_name:通过节点名字查找指定节点 1.2. of_find_node_by_type:通过device_type属性查找指定节点 ...

    1、查找节点的OF函数  

    Linux内核使用device_node结构体来描述一个节点,此结构体定义在文件include/linux/of.h

    1.1. of_find_node_by_name:通过节点名字查找指定节点

    1.2. of_find_node_by_type:通过device_type属性查找指定节点

     

    1.3. of_find_node_by_path:通过路径查找指定节点

    1.4. of_find_compatible_node:根据device_type和compatible两个属性查找指定节点

    1.5. of_find_matching_node_and_match:通过of_device_id匹配表查找指定节点

    2、查找父子节点OF函数

    2.1. of_get_parent:获取指定节点的父节点

     

    2.2. of_get_child:获取制定节点的子节点

    3、提取属性值的OF函数

      Linux内核中使用结构体property表示属性,此结构体同样定义在文件include/linux/of.h中

    3.1. of_find_property:查找指定属性

    3.2. of_property_count_elems_of_size:获取属性中元素的数量

     

    3.3. of_property_read_u32_index:从属性中获取指定标号的u32类型数据值

    3.4. of_property_read_u8

      of_property_read_u16

      of_property_read_u32

      of_property_read_u64:分别读取属性中u8、u16、u32、u64类型的数据

    3.5. of_property_read_u8_array

      of_property_read_u16_array

      of_property_read_u32_array

      of_property_read_u64_array:分别读取属性中u8、u16、u32、u64类型的数组数据

     3.6. of_property_read_string:读取属性中的字符串数据

    3.7. of_n_addr_cells:获取#address-cells属性值

    3.8. of_n_size_cells:获取#size-cells属性值

    展开全文
  • linux c 字符串查找函数 strstr strcasestr

    千次阅读 2020-02-20 20:46:38
    一、strstr函数使用 [1]函数原型 char *strstr(const char *haystack, const char *needle); [2]头文件 #include <string.h> [3]函数功能 搜索"子串"在"指定字符串"中第一...被查找的目标字符串"父串...

    一、strstr函数使用

    [1] 函数原型

    char *strstr(const char *haystack, const char *needle);

    [2] 头文件

    #include <string.h>

    [3] 函数功能

    搜索"子串"在"指定字符串"中第一次出现的位置

    [4] 参数说明

    haystack        -->被查找的目标字符串"父串"
    needle          -->要查找的字符串对象"子串"

    注:若needle为NULL, 则返回"父串"

    [5] 返回值

    (1) 成功找到,返回在"父串"中第一次出现的位置的 char *指针
    (2) 若未找到,也即不存在这样的子串,返回: "NULL"

    [6] 程序举例

    #include <stdio.h>
    #include <string.h>
    int main(int argc, char *argv[])
    {
        char *res = strstr("xxxhost: www.baidu.com", "host");
        if(res == NULL) printf("res1 is NULL!\n");
        else printf("%s\n", res);    // print:-->'host: www.baidu.com'
        res = strstr("xxxhost: www.baidu.com", "cookie");
        if(res == NULL) printf("res2 is NULL!\n");
        else printf("%s\n", res);    // print:-->'res2 is NULL!'
        return 0;
    }

    [7] 特别说明

    注:strstr函数中参数严格"区分大小写"

    二、strcasestr函数

    [1] 描述

    strcasestr函数的功能、使用方法与strstr基本一致。

    [2] 区别

    strcasestr函数在"子串"与"父串"进行比较的时候,"不区分大小写"

    [3] 函数原型

    #define _GNU_SOURCE
    #include <string.h>
    char *strcasestr(const char *haystack, const char *needle);

    [4] 程序举例

    #define _GNU_SOURCE             // 宏定义必须有,否则编译会有Warning警告信息
    #include <stdio.h>
    #include <string.h>
    int main(int argc, char *argv[])
    {
        char *res = strstr("xxxhost: www.baidu.com", "Host");
        if(res == NULL) printf("res1 is NULL!\n");
        else printf("%s\n", res);     // print:-->'host: www.baidu.com'
        return 0;
    }

    [5] 重要细节

    如果在编程时没有定义"_GNU_SOURCE"宏,则编译的时候会有警告信息

    warning: initialization makes pointer from integer without a cast

    原因:

    strcasestr函数并非是标准C库函数,是扩展函数。函数在调用之前未经声明的默认返回int型

    解决:

    要在#include所有头文件之前加  #define _GNU_SOURCE   

    另一种解决方法:(但是不推荐)

    在定义头文件下方,自己手动添加strcasestr函数的原型声明

    #include <stdio.h>
    ... ...
    extern char *strcasestr(const char *, const char *);
    ... ...         // 这种方法也能消除编译时的警告信息

     

     

    展开全文
  • 7、如果有好几个的话,用objdump -x看看符号 有一些常识或者说平时的积累是必要的,终究常用的库很少。 当我遇到一个函数不知道所属的库的时候,我会先找到头文件所属的包,然后看看那个包(或者...


    1、man htons,里面讲的是arpa/inet.h;
    2、假设你用的是RPM类型的系统:rpm -qa --filesbypkg | grep arpa/inet.h,你就看见了一个或者几个包提供这个文件,现在我看到的是glibc-headers(RHEL5)
    3、貌似这个glibc-headers只是个包含头文件的软件包,看看其他类似的软件包是什么:rpm -qa | grep glibc
    4、我看见了glibc,glibc-devel,glibc-common,觉得glibc-devel肯定是提供.a(静态链接)的
    5、rpm -q --filesbypkg glibc-devel| grep /.a$ | awk '{print $2}' |xargs grep htons找到所有带htons的静态库文件
    6、只有一个:/usr/lib/libc.a
    7、如果有好几个的话,用objdump -x看看符号表



    有一些常识或者说平时的积累是必要的,终究常用的库很少。

    当我遇到一个函数不知道所属的库的时候,我会先找到头文件所属的包,然后看看那个包(或者相关包)的.a或者.so文件有哪些,然后:

    objdump -x 库文件 | grep 函数名

    确认函数名是定义而不是引用以后,就知道需要链接这个库了。

    展开全文
  • linux 下面查找函数的方法

    千次阅读 2008-09-01 13:32:00
    寻找 API 函数的方便技术就是使用类似下面的命令搜索 include 目录:grep -C7 AP.*_DECLARE /usr/local/include/* | grep -C7 [search-keyword]
  • Linux查找函数说明的方法

    千次阅读 2008-11-26 14:52:00
    1 使用man -k 显示某个lib中包括的函数列表。 如:man -k pthread 
  • Linux下动态库so查找函数列表

    千次阅读 2018-05-01 16:33:42
    查看某个so在Linux(Ubuntu)系统下的路径 ldconfig -p | grep libc.so.6 ldconfig -p | grep xxx.so 查看某个 so导出函数列表 # 如果输出符号T,则函数正常导出 # 如果输出符号U,则函数为定义 ...
  • Linux -- fflush函数

    千次阅读 2019-08-07 17:21:19
    翻译自Ubuntu 19版本下的Linux Programmer's Manual 函数名:fflush - 刷新一个流 概要: #include <stdio.h> int fflush(FILE *stream); 描述:   对于输出流,fflush()通过流的底层write(2)...
  • Linux系统中文件查找find函数用法

    千次阅读 2018-12-07 21:24:05
    find -name april* 在当前目录下查找以april开始的文件 find -name april* fprint file 在当前目录下查找以april开始的文件,并把结果输出到file中 find -name ap* -o -name may* 查找以ap或may开头的文件 find /mnt...
  • Linux设备常用的OF函数总结

    千次阅读 2020-06-11 12:53:23
    查找结点的OF函数 Linux 内核使用 device_node 结构体来描述一个节点,此结构体定义在文件 include/linux/of.h 中,定义如下: struct device_node { const char *name; /* 节点名字 */ const char *type; /* ...
  • Linux下如何查找一个函数在哪个库中

    千次阅读 2016-10-28 00:04:40
    ...1、Linux 中如何快速查看 C 库函数的头文件以及相应的函数信息?----https://www.zhihu.com/question/25028178 2、如何查看linux函数对应的库文件----http://bbs.csdn.net/topics/330158874
  • Linux -- exec函数的学习记录

    千次阅读 2019-03-08 13:39:33
    Linux C编程中,调用另一个可执行文件或调用命令可以使用system函数和exec系列的函数。 下面关于exec系列函数的一些方法和使用做一个简单的记录。 exec系列函数。都是以execl开头或者execv开头(l表示列表list,v...
  • 可以通过man指令来查找某个数据结构或者函数在哪个头文件之中。 man命令后面加数字是有特定意义的 man : linux标准命令(shell命令)的查询 man 2表示查询的是系统内核可调用的函数,比如open,write; man 3...
  • Linux 内核给我们提供了一系列的函数来获取设备中的节点或者属性信息,这一系列的函数都有一个统一的前缀“of_”,所以在很多资料里面也被叫做 OF 函数。这些 OF 函数原型都定义在include/linux/of.h 文件中。 1. ...
  • Linux查找 .so 文件中函数入口

    千次阅读 2016-10-09 20:07:02
    有时候会想知道 .so 文件中某些信息,比如版本,函数入口等。strings 命令是个很有用的命令,比如我想知道 libstdc++.so 这个动态库里面是否有 refill 函数,可以用$ strings libstdc++.so | grep refill输出_ZN9__...
  • linux常用函数大全

    2007-09-12 23:04:54
    linux函数大全,方便查找使用。看好了再下,(1)字符测试函数,(2)数据转换函数,(3)内存配置函数,(4)时间函数,(5)字符串处理函数
  • linux下的c语言系统函数调用

    千次阅读 2018-11-01 16:05:34
    4.linux下的系统函数的使用 c语言 4.1数学函数的使用 1pow函数 2.exp函数 3.log函数 4.rand()随机数函数 4.2字符函数的使用 4.3系统时间与日期函数的使用 系统时间 时间间隔 4.4环境控制函数   4.linux...
  • Linux下根据函数查找所在文件

    千次阅读 2017-08-12 14:32:53
    grep "关键字" -r 搜索目录 grep "add" -r ./Downloads/test/
  • Linux 之exec系列函数

    千次阅读 2018-08-24 23:26:46
    当进程调用exec系列函数中的任一个时,该进程用户空间资源(正文、数据、堆、栈)完全由新程序替代。因为调用exec并不创建新程序,如果无特殊指示代码,进程内核信息基本不用修改 (1)execl函数声明如下: // ...
  • 关于怎样查出一个库函数到底在哪个库文件中,我想到一个变通的办法,以查找fcntl函数在哪个库文件中为例吧: 1、找到一个使用fcntl的可执行文件,如test_fcntl。实在不行,自己编一个只有fcntl函数的c文件,然后...
  • linux下运行strlwr函数出错:ld returned 1 exit status
  • linux access()函数和readdir()函数

    千次阅读 2012-08-30 09:24:57
    linux access()函数和readdir()函数 1.1 access() access函数的原型如下: int access(const char *pathname, int mode); 此函数是用来获得调用进程对pathname所指向的文件(regular)或者是目录(directory)的...
  • 如:grep “time_t” /usr/include/*.h |grep “typedef”可以查找到...使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索。搜索文件的命令为”find“;”locate“;”whereis
  • 文章目录前言实现打印堆栈信息的函数显示堆栈调用信息编译时无法添加-rdynamic选项总结程序源码 前言 关于什么是函数调用堆栈在上篇文章《windows环境下C++...这些接口在linux上是无法使用的,因为工作的关系,...
  • Linux下C语言main函数的原型

    千次阅读 2013-12-09 11:06:53
    今天在研究dhcpd代码的时候,发现在dhcpcd.c中,main函数的写法为: int main(argn,argc,argv) int argn; char *argc[],*argv[]; { ...... } 以前见过的都是下面这些形式的: int main(); void main(); int main...
  • Linux中的strstr函数

    千次阅读 2015-05-09 15:17:53
    函数名: strstr  功 能: 在串中查找指定字符串的第一次出现  用 法: char *strstr(char *str1, char *str2);  strstr原型:extern char *strstr(char *haystack, char *needle);  用法:#include  功能:从...
  • 查找linux内核指定地址对应的函数

    千次阅读 2010-12-20 16:01:00
    对于2.4内核和2.6内核的内核符号是有区别的,2.4内核默认情况下模块中的非静态全局变量以及非静态函数在模块加载后会自动导出到内核符号中,而2.6内核默认情况下是不会自动导出的,需要显式调用宏EXPORT_SYMBOL...
  • Linux execlp函数

    万次阅读 2012-05-15 11:46:39
    execlp从PATH 环境变量中查找文件并执行定义:int execlp(const char * file,const char * arg,……);头文件:#include说明:execlp()会从PATH 环境变量所指的目录中查找符合参数file的文件名, 找到后便执行该文件, ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 197,206
精华内容 78,882
关键字:

linux树表查找函数的函数描述

linux 订阅