ホームページ  >  記事  >  運用・保守  >  Linuxの.aファイルとは何ですか

Linuxの.aファイルとは何ですか

WBOY
WBOYオリジナル
2022-07-14 16:06:213051ブラウズ

Linux では、「.a」ファイルは静的リンク ライブラリ ファイルです。静的リンク ライブラリ ファイルは、実行可能ファイルにリンクされ、実行可能ファイルの一部となる、呼び出される関数またはプロセスを指します。呼び出された関数のコードはアプリケーションの実行ファイルにコピーされませんが、呼び出された関数の記述情報がアプリケーションの実行ファイルに追加されます。

Linuxの.aファイルとは何ですか

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux の .a ファイルとは何ですか?

.a ファイルは、LINUX システムの静的リンク ライブラリ ファイルです。

いわゆる静的リンクとは、呼び出される関数またはプロセスを実行可能ファイルにリンクし、実行可能ファイルの一部にすることを指します。複数のプログラムが同じ関数を呼び出すと、メモリ内に関数のコピーが複数存在することになり、貴重なメモリ リソースが無駄になります。 .so ファイルは共有ライブラリ ファイル (動的にリンク) です。動的リンクによって呼び出される関数コードは、アプリケーションの実行ファイルにはコピーされず、呼び出された関数の記述情報 (多くの場合、再配置情報) のみがアプリケーションのロード時にのみ追加されます。オペレーティング システムの管理下で、アプリケーションと対応する .so の間にリンク関係が確立されます。

.a ファイルは、複数の .o ファイルを組み合わせたものです。 .o ファイルはオブジェクト ファイルであり、その内容は 01 などの機械実行可能な命令です。プログラムを実行するには、リンクする必要があります。リンクとは、複数の .o ファイルを 1 つの実行可能ファイルにリンクすることです。 。

#拡張知識

.o はオブジェクトであり、Windows でコンパイルされた obj ファイル (一般にターゲット ファイルとして知られている) に相当します。

. a はアーカイブであり、Windows VC でコンパイルされた lib ファイル (静的ライブラリ ファイルとして一般的に知られている) に相当します。

.o ファイルはリンク ファイル、.a は静的ライブラリ ファイルで、によって生成されます。 .o ファイルは、ライブラリとして外部プログラムに関数とインターフェイスを提供します。

Generate .o file:

gcc -c test.o test.c

Generate .a file:

ar cqs test.a test.o

.o は Windows の obj ファイルに相当し、1 つの .c または .cpp ファイルが対応します。 1 つの .o ファイル

.a は、複数の .o ファイルの組み合わせであり、静的接続、つまり STATIC モードに使用されます。複数の .a ファイルをリンクして、exe 実行可能ファイル

# を生成できます。 ##.so これは共有オブジェクトであり、動的接続に使用されます。Windows dll に似ています。使用された場合にのみロードされます。

推奨される学習:

Linux ビデオ チュートリアル

以上がLinuxの.aファイルとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。