インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

gnu-prefix

コンパイラーから呼び出される GNU* ユーティリティーの名前に追加するプリフィクスを指定します。

構文

Linux*:

-gnu-prefix=prefix

macOS*:

なし

Windows*:

なし

引数

prefix

コンパイラーから呼び出される GNU* ツールの名前の前に追加する文字列。値は特定のオペレーティング・システムで使用される GNU* ツールチェーンに依存します。例えば、Wind River* Linux* 6.x の場合、prefix 値は x86_64-wrs-linux- になります。ツールチェーンのプリフィクスがハイフンで終わる場合のみ、prefix にハイフンを追加する必要があります。

ショート名またはパス名を指定することができます。

  • ショート名: -gnu-prefix=prefix

    この場合、コンパイラーは <gnu_utility> の代わりに prefix<gnu_utility> を呼び出します。この名前のユーティリティーが PATH 環境変数になければなりません。

  • パス名: -gnu-prefix=/directory_name/prefix

    この場合、コンパイラーは /directory_name/prefix<gnu_utility> を呼び出します。この名前のユーティリティーがフルパス名で呼び出されます。

デフォルト

オフ

コンパイラーは、GNU* ユーティリティーをショート名で呼び出し、PATH 環境変数で指定されたパスを検索します。

説明

このオプションは、コンパイラーから呼び出される GNU* ユーティリティーの名前に追加するプリフィクスを指定します。このオプションは、Linux* 向けのコンパイラーで利用できます。ホストは、Windows* でも Linux* でもかまいません。

-gnu-prefix オプションと -gcc-name (または -gxx-name) オプションを一緒に指定すると、次のような動作になります。

上記のアプローチにより、デフォルトのツールチェーン以外の gcc 名を指定することができます。同時に、-gcc-name オプションでショート名が指定されると、デフォルトのツールチェーンの一部と見なされ、プリフィクスが追加されます。

-gnu-prefix オプションを使用する代わりに、GNU* ユーティリティーのショート名へのシンボリック・リンクを作成し、PATH に追加することができます。例: ld--> i686-wrs-linux-gnu-ld

このオプションは、Windows* ホストで Windows* ターゲット向けにコンパイルするネイティブ・コンパイラーではサポートされていませんが、Windows* ホストで Linux* ターゲット向けにコンパイルするコンパイラーではサポートされています。

IDE オプション

なし

代替オプション

なし

Wind River* Linux* 6 向けアプリケーションを生成するため、コンパイラーをセットアップする場合について考えてみます。

ターゲット・オペレーティング・システム用の GNU* クロスツールチェーンは、次のディレクトリーにあります。

/WRL/60/x86_64-linux/usr/bin/x86_64-wrs-linux

ツールチェーンに含まれる GNU* ユーティリティー名は prefixx86_64-wrs-linux- です。

ターゲット・オペレーティング・システムの sysroot は、次のディレクトリーです。

/WRL/60/qemux86-64

Wind River* Linux* 6 向けアプリケーションをコンパイルするには、次のコマンドを実行する必要があります。

export PATH=/WRL/60/x86_64-linux/usr/bin/x86_64-wrs-linux:PATH
icc --sysroot/WRL/60/qemux86-64 -gnu-prefix=x86_64-wrs-linux- app.c

次の例は、-gcc-name-gnu-prefix を一緒に指定しています。

例 1:

コマンドライン: -gcc-name=foobar -gnu-prefix=em64t-
コンパイラーで使用される実際の GCC 名: em64t-foobar
icc で使用される ld 名: em64t-ld

例 2:

コマンドライン: -gcc-name=/a/b/foobar -gnu-prefix=em64t-
コンパイラーで使用される実際の GCC 名: /a/b/foobar
icc で使用される ld 名: em64t-ld

関連情報