libc源位置 - 用于下载或在线查看?

问题描述 投票:16回答:4

对不起,我知道这是愚蠢的但linux libc源代码在哪里?我从GNU下载的内容似乎不是我想要的,特别是我在pthreads函数系列中找不到任何内容。

某处是否存在在线(高压交叉引用)版本?

c linux pthreads posix glibc
4个回答
20
投票

大多数linux使用名为glibc的libc版本。

用于glibc的LXR(在线交叉参考系统)例如是 这里http://koala.cs.pub.ro/lxr/glibc/为2.9版本 (链接坏了)。我必须说某些东西可能不是lxr'ed因为某些源是在构建过程中生成的,例如 - 我记得 - 系统调用的包装器。

Pthreads在nptl/文件夹中。到libc源的正确链接是http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.bz2(或将2.14更改为您的版本)

更新:关闭考拉的lxr后,有:

  1. Metager with glibc:http://code.metager.de/source/xref/gnu/glibc/ (配备Sun的OpenGrok,最初用于为Solaris / OpenSolaris生成在线x-ref)
  2. 谷歌代码搜索(我知道它已关闭;但我也知道它的其他版本已经完成): http://code.google.com/codesearch并尝试搜索特定于glibc的内容

UPD(2013年3月)他们再次杀死了codesearch:

404. That’s an error.

在此服务器上找不到请求的URL / codesearch。我们知道的就这些。

UPD 2017

  1. Metager with glibc:http://code.metager.de/source/xref/gnu/glibc/
  2. 有glibc作者的在线git:https://sourceware.org/git/?p=glibc.git(树可以在https://sourceware.org/git/?p=glibc.git;a=tree浏览)
  3. glibc git镜像到github(具有一些搜索功能)https://github.com/bminor/glibc Buildroot 2018.05 notably uses this mirror
  4. 在所有debian软件包中都有像google的codesearch这样的搜索:https://codesearch.debian.net/。它可以通过“package:glibc request”请求在glibc源中搜索,也有文件浏览器:http://sources.debian.net/src/glibc/

7
投票

有关glibc存储库的信息:http://sourceware.org/glibc/wiki/GlibcGit

克隆它以获得您自己的副本并搜索它,但是您喜欢:

git clone git://sourceware.org/git/glibc.git

我在IDE项目中加载它(使用任何首选的IDE),代码导航工作得很好,让我找到我感兴趣的东西。

在线浏览源http://sourceware.org/git/?p=glibc.git


5
投票

如果您使用的是Debian派生系统,则可以使用apt-get source libc6。这将解压缩当前工作目录中的eglibc-2.12.1目录(当然版本号可能不同),并且pthreads支持位于下面的nptl/目录中。如果您是考古学家,linuxthreads/适合较旧的穿线风格。


1
投票

试试FreeBSD and Linux Kernel Cross-Reference

玩得开心 :)

© www.soinside.com 2019 - 2024. All rights reserved.