XLINK.EXE - macOS リンカ
XLINK.EXE は、XLINK(macOS 用 C++ リンカ)のコマンドライン インターフェイスです。
コマンドライン ヘルプ
C:\>xlink
Turbo Incremental Link 1.00 Copyright (c) 1997-2011 Embarcadero Technologies, Inc.
Syntax: ILINK objfiles, exefile, mapfile, libfiles, deffile, resfiles
@xxxx indicates use response file xxxx
General Options: -Af:nnnn Specify file alignment
-C Clear state before linking -Ao:nnnn Specify object alignment
-wxxx Warning control -ax Specify application type
-Enn Max number of errors -b:xxxx Specify image base addr
-r Verbose linking -Txx Specify output file type
-q Suppress banner -H:xxxx Specify heap reserve size
-c Case sensitive linking -Hc:xxxx Specify heap commit size
-v Full debug information -S:xxxx Specify stack reserve size
-Gn No state files -Sc:xxxx Specify stack commit size
-Gi Generate import library -Vd.d Specify Windows version
-GD Generate .DRC file -Dstring Set image description
Map File Control: -Vd.d Specify subsystem version
-M Map with mangled names -Ud.d Specify image user version
-m Map file with publics -GC Specify image comment str
-s Detailed segment map -GF Set image flags
-x No map -Gl Static package
Paths: -Gpd Design time only package
-I Intermediate output dir -Gpr Runtime only package
-L Specify library search paths -GS Set section flags
-j Specify object search paths -Gt Fast TLS
Image Control: -Gz Do image checksum
-d Delay load a .DLL -Rr Replace resources
出力生成
-Txx
オプション ファミリは、出力生成を制御するために使用します。
オプション | コマンド |
---|---|
|
Mach dylib を生成します。 |
|
Mach 実行可能ファイルを生成します。 |
|
Mach パッケージを生成します。 |
ライブラリ指定
XLINK ライブラリの検索パスは、以下のオプションで制御します。
オプション | 説明 |
---|---|
|
論理ルート ディレクトリ( |
|
リモート ライブラリのパスを指定します。 |
|
ローカル ライブラリの検索パスを指定します。 |
-L
オプションと -Fp
オプションは任意の順番で指定できます。
フレームワーク指定
-Ff
オプションを使用して、特定のフレームワークをリンクします。
オプション | 説明 |
---|---|
|
指定したフレームワークをリンクするように XLINK に指示します。たとえば、Carbon フレームワークをリンクするには、 |
|
指定したフレームワークをリンクするように BCCOSX に指示します。この方法で指定されたフレームワーク名は、 |
RAD Studio プロジェクトでは、フレームワークは[SDK マネージャ]パネルで指定します(SDK のリモート パスを編集します)。
実行可能ファイルのヘッダーのパラメータ
macOS のダイナミック ライブラリには、それに対応するインストール名(ld 名)があります。これは .dylib ファイルに埋め込まれた文字列で、.dylib ファイルのパスを表します。たとえば、CoreServices のインストール名は、/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
です。CoreServices に依存する macOS の実行可能ファイルやダイナミック ライブラリをビルドする場合、XLINK は CoreServices のインストール名情報を含むレコードをバイナリ イメージに挿入します。
macOS のバイナリ イメージには、読み込み時のパラメータを含むヘッダーが含まれています。これらのパラメータの中には、リンク時には不明のダイナミック ライブラリのパスを含むものもあります。このようなパスにはパッチを適用できます。ただし、リンカがイメージ ヘッダー内に十分なスペースを確保していないと、問題の原因になります。確保する追加バイト数を指定するには、-Gr
オプションを使用します。