gpt4 book ai didi

linux - 查看 namespace 解析器函数的源代码 linux fedora

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:46:12 24 4
gpt4 key购买 nike

我想查看 ns_initparse()、res_search() 等函数的源代码。我在哪里可以找到它们?

最佳答案

以下是我为 res_search 查找源代码所采取的步骤。

$ man res_search

我在该手册页中看到:Link with -lresolv

$ ls /usr/lib/libresolv*

糟糕,什么都没有。 Where else do we look ?怎么样:

$ ls /lib/libresolv*/lib/libresolv-2.7.so  /lib/libresolv.so.2

太棒了。现在what package is that from

$ rpm -qf /lib/libresolv-2.7.soglibc-2.7-2

啊。它在 glibc .现在,有两个选择。我可以获取源 RPM,并查看它们,以便获得构建我的系统的确切版本,但是 that's a bit complicated to set up .

如果您不需要从中构建的确切源 RPM,您可以查看 [upstream]( http://en.wikipedia.org/wiki/Upstream_(software_development)) 源代码。只需查看 glibc site 即可找到 source code,并且从那里开始寻找。

$ curl -O http://ftp.gnu.org/gnu/glibc/glibc-2.7.tar.gz  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                 Dload  Upload   Total   Spent    Left  Speed100 20.2M  100 20.2M    0     0  12.3M      0  0:00:01  0:00:01 --:--:-- 12.8M$ tar xzf glibc-2.7.tar.gz$ cd glibc-2.7$ find . -name "*.c" | xargs grep res_search./resolv/res_data.c:res_search(const char *name, /* domain name */./resolv/res_data.c:# undef res_search./resolv/res_data.c:weak_alias (__res_search, res_search);

好了!

如果你有Git安装,而不是仅仅下载 tarball,你可以克隆 git repo,并浏览它。这样,您还可以查看任何过去或 future 的版本,了解它随时间发生的变化。

$ git clone git://sourceware.org/git/glibc.git$ cd glibc$ git checkout glibc-2.7$ git grep res_search resolv/res_data.c:res_search(const char *name,  /* domain name */resolv/res_data.c:# undef res_searchresolv/res_data.c:weak_alias (__res_search, res_search);

关于linux - 查看 namespace 解析器函数的源代码 linux fedora,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1695434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com