JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
リンカーとライブラリ     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  Oracle Solaris リンカーの紹介

2.  リンカー

3.  実行時リンカー

4.  共有オブジェクト

5.  アプリケーションバイナリインタフェースとバージョン管理

6.  サポートインタフェース

7.  オブジェクトファイル形式

8.  スレッド固有領域 (TLS)

9.  mapfile

A.  リンカーのクイックリファレンス

静的方法

再配置可能オブジェクトの作成

静的実行プログラムの作成

動的方法

共有オブジェクトの作成

動的実行可能プログラムの作成

B.  バージョン管理の手引き

C.  動的ストリングトークンによる依存関係の確立

D.  直接結合

E.  System V Release 4 (バージョン 1) Mapfile

F.  リンカーとライブラリのアップデートおよび新機能

索引

動的方法

これは、リンカーのデフォルトの動作方法です。-d y オプションで明示的に指定することもできますが、-d n オプションを使用しない場合には、暗黙のうちに指定されます。

この場合、再配置可能オブジェクト、共有オブジェクト、およびアーカイブライブラリを指定できます。-l オプションを使用すると、ディレクトリ検索が実行され、ここで、各ディレクトリは、共有オブジェクトを見つけるために検索されます。そのディレクトリで共有オブジェクトが見つからない場合は、次にアーカイブライブラリが検索されます。-B static オプションを使用すると、アーカイブライブラリの検索だけに限定されます。「共有オブジェクトとアーカイブとの混合体へのリンク」を参照してください。

共有オブジェクトの作成

次の例は、上記のポイントを組み合わせたものです。

$ cc -c -o foo.o -K pic -xregs=no%appl foo.c
$ cc -M mapfile -G -o libfoo.so.1 -z text -z defs -B direct -z lazyload \
-z ignore -R /home/lib foo.o -L. -lbar -lc

次の例は、上記のポイントを組み合わせたものです。

$ cc -M mapfile -G -o libfoo.so.1 -z text -z defs -B direct -z lazyload \
-z ignore -R /home/lib -h libfoo.so.1 foo.o -L. -lbar -lc
$ ln -s libfoo.so.1 libfoo.so

動的実行可能プログラムの作成

次の例は、上記のポイントを組み合わせたものです。

$ cc -o prog -R /home/lib -z ignore -z lazyload -B direct -L. \
-lfoo file1.o file2.o file3.o .....