プログラミング言語SML#解説 4.1.0版
28 SML#コンパイラの起動

28.4 リンクオプション

以下のオプションはリンカの振る舞いを制御する. このカテゴリに属するオプションは 対話環境にも作用する.

-llibrary

指定された名前のライブラリをリンクする. 対話環境で指定された場合,そのライブラリの関数を 対話的にインポートすることが可能となる.

-Ldir

リンク時にライブラリを検索するパスにディレクトリdirを追加する. 複数の-Lオプションがコマンドラインに指定されている場合, 指定された順番で各ディレクトリを検索する.

-nostdlib

ライブラリ検索パスを-Lで指定したディレクトリのみに限定する.

-c++

リンクコマンドとしてCコンパイラドライバではなくC++コンパイラドライバを 用いる. C++で書かれたオブジェクトファイルやライブラリをSML#プログラム にリンクする場合はこのオプションを指定する.

-Wl args, -Xlinker arg

リンクの際にコンパイラドライバに追加で与える引数を指定する. -Wlargsにはコンマ区切りで引数のリストを指定する. -Xlinkerはただひとつの引数を指定する. 複数の-Wlおよび-Xlinkerがコマンドラインに指定された 場合,全ての追加引数が指定された順にリンクコマンドに渡される.

-filemap filename

コンパイラがファイルを探すときに使用するファイル名の対応表を指定する. smlsharpコマンドは .smiファイル名の拡張子を.smiから.oに置き換えた名前を 対応するオブジェクトファイルの名前とする. このオプションを指定することで,この対応を変更することができる. filenameの各行には,=記号, コンパイラが生成したファイル名,および 本来アクセスすべきファイル名を,この順番で, スペースで区切って書く. filenameには,SML#コンパイラが 検索しようとする全てのファイルの名前が記載されていなければならない. filenameに記載されていないファイルが 必要になったときはエラーとなる.