c - time.h 的位置 -> localtime() 在 Ubuntu 中的实现?

标签 c ubuntu

我正在 time.h 中搜索 localtime() 函数的实现。我看到不同的平台有不同的 c 库源位置。我想知道 Ubuntu 14.04 中的位置?如果默认源不包含在操作系统中,请告诉我如何下载源或源的在线位置。 谢谢。

最佳答案

  1. 检查您的系统使用哪个二进制文件作为 libc 实现。

    为此编译一个最小的 C 程序并在其上运行 ldd:

    ldd a.out
    

    你可能会得到这样的结果:

    linux-vdso.so.1 =>  (0x00007fff429c6000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f21cdcb7000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f21ce05e000)
    

    从这里您可以提取信息 libc 由 libc6.so.6 提供。

  2. 检查哪个包提供了这个二进制文件。

    搜索提供在 1. 下找到的文件的包:

    dpkg -S libc.so.6
    

    你可能会得到:

    libc6-i386: /lib32/libc.so.6
    libc6:amd64: /lib/x86_64-linux-gnu/libc.so.6
    

    上面的输出告诉你,有两个包提供了这个文件。这是 32 位和 64 位实现。

  3. 决定你想要哪一个并执行apt-get source 这个包的源代码。

假设包是libc6,做

apt-get source libc6

然后在当前目录下的一个目录中找到thre source。

关于c - time.h 的位置 -> localtime() 在 Ubuntu 中的实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28991988/

相关文章:

c - C中的文件解析

c - LoadRunner:如何创建 DLL 以使用 "web_reg_save_param"函数

C 在 Union 中释放一个字符串

C/Youtube API 请求 > VLC

python - Ubuntu 14.04 LTS : `apt-get install rake` -> “ImportError: No module named rake”

c - Windows 和 UTF-8 字符上的 MinGW + GCC

linux - Windows 上的 Ubuntu 上的 Bash 上的 Hadoop 权限被拒绝

ubuntu - blk_update_request : I/O error, 开发 sda,扇区 xxxxxxxxxxx

java - Java中如何指定文件路径?

unit-testing - 我在 ubuntu 上使用 selenium 进行测试。在隐形工作区中测试