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

/NODEFAULTLIB[:library] 

解説

それぞれの文字について以下に説明します。

  • library
    外部参照を解決するときに無視するライブラリを指定します。

解説

/NODEFAULTLIB オプションは、リンカーが外部参照を解決するときに検索するライブラリ リストから、検索の必要がない既定のライブラリを 1 つ以上除外します。

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

/NODEFAULTLIB は、既定では、外部参照を解決するときに検索するライブラリ リストから、既定のライブラリをすべて除外します。 library パラメーター (省略可能) を指定して、外部参照を解決するときに検索するライブラリのリストから、複数のライブラリを指定して除外できます。 除外するライブラリごとに /NODEFAULTLIB オプションを 1 つずつ指定します。

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

/NODEFAULTLIB:library/DEFAULTLIB:library で同じライブラリ名を指定すると、前者の指定が優先されるためそのライブラリは検索されません。

たとえば、/NODEFAULTLIB を使用して C ランタイム ライブラリなしでプログラムをビルドするときは、/ENTRY も使用して、プログラムのエントリ ポイント (関数) を指定することが必要な場合もあります。 詳細については、「CRT ライブラリの機能」を参照してください。

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

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、「Visual C++ プロジェクトのプロパティの設定」を参照してください。

  2. [リンカー] フォルダーをクリックします。

  3. [入力] プロパティ ページをクリックします。

  4. [すべての既定のライブラリの無視] プロパティをクリックするか、無視するライブラリのリストを [特定のライブラリの無視] プロパティで指定します。 [コマンド ライン] プロパティ ページに、これらのプロパティに加えた変更内容が反映されます。

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

参照

関連項目

リンカー オプションの設定

リンカー オプション