2011-06-26 1 views
14

申し訳ありません私はこれが愚かだと知っていますが、linux libcのソースコードはどこにありますか?私がGNUからダウンロードしたものは、私が望むものではないようでした。具体的には、pthreadsファンクションファミリには何も見つかりませんでした。libcソースの場所 - ダウンロードまたはオンライン表示用?

どこかオンライン(ハイパーテキストクロスリファレンス)バージョンがありますか?

+0

pthreadsはnptl/folderにあります。右のリンクはhttp://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.bz2 – osgx

+3

"特に私は何も見つけられませんでした" - うわー、pthreadsは軽いです。 –

答えて

17

ほとんどの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. のglibcとMetager:http://code.metager.de/source/xref/gnu/glibc/(だった日のOpenGrok、添えは、もともと)は、Solaris/OpenSolarisのためのオンライン-REF Xを生成するために使用

  2. Googleのコード検索(私はそれが閉じられたことを知っている。しかし、私もそれがアップしている他のバージョン)を知っている:http://code.google.com/codesearchと何かを検索しようglibc-特定

UPD(2013年3月)彼らは再びCodeSearchを殺した:

404. That’s an error. 

を要求されたURL/CodeSearchをこのサーバー上に見つかりませんでした。それだけで私たちは知っている。 glibcので

UPD 2017

  1. Metager:http://code.metager.de/source/xref/gnu/glibc/

  2. オンラインgitのはglibcの著者である:https://sourceware.org/git/?p=glibc.git(ツリーはhttps://sourceware.org/git/?p=glibc.git;a=treeでbrowserableある)

  3. glibcのgitのがミラーリングされていますgithub(いくつかの検索機能を持っています)https://github.com/bminor/glibc

  4. すべてのdebianパッケージにgoogleのcodesearchのような検索があります:https://codesearch.debian.net/。これは、「パッケージ:glibcの要求」により、glibcのソースで検索することができます要求しても、ファイルブラウザを持っている:http://sources.debian.net/src/glibc/2.23-1/

+0

うわー、優秀2-for。ありがとうございました。 – ValenceElectron

+2

最初のリンクは私のために壊れているようです。 – paxdiablo

+0

link is brokern .... LXR OF glibc ..の新しいリンクを更新できますか? –

5

あなたはDebianの派生システムを使っているのであれば、あなたはapt-get source libc6を使用することができます。これにより、現在の作業ディレクトリにeglibc-2.12.1ディレクトリ(バージョン番号は異なる場合があります)がアンパックされ、pthreadsのサポートはその下のnptl/ディレクトリにあります。 linuxthreads/は、あなたが考古学者である場合に備えて、古いスレッドスタイル用です。

+0

考古学者になるためには、2.12ではなく、2.2や2.3のようなものをダウンロードしてください。なぜなら、linuxthreadsは削除されるからです(バニラbz2)。 – osgx

+1

@osgx、私は驚いた、彼らは永遠に古いものを維持するつもりだと思った。彼らのために良い。 :) – sarnold

+0

http://ftp.gnu.org/gnu/glibc/で別々のlinuxthreadsアーカイブを参照してください。いつでもglibcの主要なタールに入っていたかどうかは分かりません。私の見解では、linuxthreadsはnptlより優れています。なぜなら、各スレッドで別々の 'setitimer'を設定できるからです。 ^) – osgx

1

FreeBSD and Linux Kernel Cross-Referenceをお試しください。 http://sourceware.org/glibc/wiki/GlibcGit

クローンそれはあなた自身のコピーを取得し、あなたが好きしかし、それを検索する:

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

私はそれをロード

はglibcのリポジトリに楽しい:)

+2

libcのソースはすぐに見つけられません。したがって、FreeBSD libcの場合はhttp://fxr.watson.org/fxr/source/?v=FREEBSD-LIBC、glibc-2.7の場合はhttp://fxr.watson.org/fxr/source/?v=GLIBC27を開きます。 – osgx

+1

これらはもはや機能しません。 – sendmoreinfo

7

情報を持っていますIDEプロジェクト(任意のIDEを使用しています)とコードナビゲーションは、私が興味を持っているものを見つけることができます。

ソースをオンラインで参照http://sourceware.org/git/?p=glibc.git

関連する問題