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.  リンカーとライブラリのアップデートおよび新機能

索引

システム固有の共有オブジェクト

動的トークン $OSNAME$OSREL$PLATFORM、および $MACHINE は実行時に展開され、システム固有の情報を提供します。これらのトークンは、フィルタ、「実行パス」、または依存関係の定義に利用できます。

$OSNAME は、ユーティリティー uname(1) にオプション -s を付けて実行した場合に表示されるように、オペレーティングシステムの名前を反映して展開されます。$OSREL は、uname -r を実行した場合に表示されるように、オペレーティングシステムのリリースレベルを反映して展開されます。$PLATFORM は、uname -i を実行した場合に表示されるように、ベースとなるプラットフォーム名を反映して展開されます。$MACHINE は、uname -m を実行した場合に表示されるように、ベースとなるマシンのハードウェア名を反映して展開されます。

次の例は、プラットフォーム固有の「フィルティー」libfoo.so.1 にアクセスするように補助フィルタ libbar.so.1 を設計する方法を示します。

$ LD_OPTIONS='-f /platform/$PLATFORM/lib/libbar.so.1' \
cc -o libfoo.so.1 -G -K pic -h libfoo.so.1 -R. foo.c
$ elfdump -d libfoo.so.1 | egrep 'SONAME|AUXILIARY'
       [2]  SONAME            0x1                 libfoo.so.1
       [3]  AUXILIARY         0x96                /platform/$PLATFORM/lib/libbar.so.1

このメカニズムは、共有オブジェクト /lib/libc.so.1 にプラットフォーム固有の拡張を行うために、Oracle Solaris OS で使用されます。