web-dev-qa-db-ja.com

libcのソースコードをオンラインで閲覧できる場所(doxygenなど)

Stdlibで関数の実装を調べたい場合があります。ソースコードをダウンロードしましたが、かなり面倒です。

ヒット数が多いため、grepだけではあまり適していません。

ドキュメントがあるウェブページのdoxygenスタイルを知っている人はいますか?.

Linuxカーネルについても同じことが言えます。

ありがとう

29
monkeyking

Libcドキュメントの this はどうですか?そしておそらく this カーネルの場合? Googleコード検索もあります。 ここ は検索例です。

詳細 Google Code Search linux-2.6カーネルのmallocへの参照については、package:linux-2.6mallocのような検索クエリを入力できます。

編集:Googleコード検索がシャットダウンされました。ただし、gitリポジトリには http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git でアクセスでき、検索もあります。

8
Matthew Talbert

ディストリビューションがVanillaGLIBCまたはEGLIBCフォークを使用しているかどうかを確認する必要があります (DebianとUbuntuはEGLIBCに切り替えました 編集:彼らは2014年頃に戻った)。

とにかく、GLIBCのリポジトリブラウザは http://sourceware.org/git/?p=glibc.git にあります。

http://code.woboq.org/userspace/glibc/ 、以下の@guruzによって投稿された、良い代替手段です。

同じファイルの複数のバージョンが存在するため、ソースは少し複雑です。

18
Jacopo

試すことができます http://code.woboq.org/userspace/glibc/

IDEに似た素晴らしいナビゲーション/ハイライトがあります。

enter image description here

6
guruz

ソースをglibcにナビゲートするのを助けるために、おそらく ctags または cscope

注:glibcのソースを見るたびに面倒になるので、注意してください。 :)

3
MikeK

GNU C(glibc)を使用している場合、関数(GNU拡張機能を超える)は POSIX標準 までそれらの引数、実装、失敗、および戻り値。静的メンバーの内部を覗き見したい場合は、コードを確認する必要があります。

GlibcにDoxygenのようなものを採用しようとするすべてのプッシュ(私が覚えている)は、次の理由で拒否されました。

  1. 冗長なPOSIXは、公開されているほとんどすべての情報と、人のページおよび情報ページをすでに文書化しています。
  2. 最初は仕事が多すぎる
  3. メンテナのためのより多くの仕事

カーネルに関する限り、Linuxは Kerneldoc と呼ばれるDoxygenに非常によく似たシステムを使用します。

1
Tim Post

また、actualDoxygenで生成されたドキュメントを http://fossies.org/dox/glibc から取得することもできます。

0
SamB