0

私はアプリを持っています。このアプリはGlibcを使用していますが、glibcをリンクせずにコンパイルしたいので、それを使用するコードを削除/変更する必要があります。glibcで定義されている関数のリストはどこで入手できますか?

ありがとう!

4

1 に答える 1

4

一般的なエントリポイントのスタートアップを提供するには、glibcが必要ですmain(適切な場所へのセットアップなどargcargv

システムコールを呼び出すにはglibcが必要です(、、、、などの周りに「ラッパー」を提供しますreadwriteopenfork

、、、、、、などprintfのI/O関数を提供するにはglibcが必要です。scanfgetchargetcfopenfclose

、、、、などstrcpyの一般的な文字列関数を提供するには、glibcが必要です。strcatstrtokstrchr

他の標準関数、、、、、、、、などrandを提供するsrandにはglibcが必要です。qsortassertexitsetjmplongjmp

要約すると、おそらくglibcなしでは意味のあるプログラムを書くことはできません。

もちろん、glibcを同じ機能を提供する他のライブラリに置き換えます。組み込みシステムをターゲットにしているため、おそらくもう少し「軽量」なuclibcがあります。この場合、メモリはもう少し貴重です。

于 2013-01-27T23:15:31.917 に答える