次の方法で共有


/NODEFAULTLIB (ライブラリを無視)

/NODEFAULTLIB リンカー オプションは、外部参照を解決するときに検索するライブラリの一覧から 1 つ以上の既定のライブラリを削除するようにリンカーに指示します。

構文

/NODEFAULTLIB[:library]

引数

library
リンカーが外部参照を解決するときに無視する省略可能なライブラリ名。

解説

既定のライブラリへの参照を含まない .obj ファイルを作成するには、 /Zl (既定のライブラリ名を省略) を使用します。

既定では、 /NODEFAULTLIB は、外部参照を解決するときに検索するライブラリの一覧からすべての既定のライブラリを削除します。 省略可能な library パラメーターを使用すると、外部参照を解決するときに検索するライブラリの一覧から、指定したライブラリを削除できます。 除外するライブラリごとに 1 つの /NODEFAULTLIB オプションを指定します。

リンカーは、最初に明示的に指定したライブラリ、次に /DEFAULTLIB オプションで指定された既定のライブラリ、次に .obj ファイルで指定された既定のライブラリで検索することで、外部定義への参照を解決します。

/NODEFAULTLIB:libraryは、両方で同じlibrary名が指定されている場合に/DEFAULTLIB:libraryをオーバーライドします。

/NODEFAULTLIBを使用して C ランタイム ライブラリなしでプログラムをビルドする場合は、/ENTRY オプションを使用してプログラムのエントリ ポイント関数を指定する必要がある場合もあります。 詳しくは、「CRT ライブラリの機能」をご覧ください。

Visual Studio 開発環境でこのリンカー オプションを設定するには

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳しくは、「コンパイラとビルドのプロパティを設定する」をご覧ください。

  2. [構成プロパティ]>[リンカー]>[入力] プロパティ ページを選択します。

  3. 既定のすべてのライブラリの配置プロパティを変更します。 または、[特定の既定のライブラリの無視] プロパティで、無視するライブラリのセミコロン区切りのリストを指定します。 Linker>Command Line プロパティ ページには、これらのプロパティに加えた変更の効果が表示されます。

  4. [OK] または [適用] を選択して、変更内容を保存します。

このリンカーをコードから設定するには

関連項目

MSVC リンカーのリファレンス
MSVC リンカー オプション