XL Fortran for AIX V8.1.1

ユーザーズ・ガイド


構成ファイルのカスタマイズ

構成ファイルは、呼び出された時にコンパイラーが使用する情報を指定します。XL Fortran は、インストール時にデフォルト構成ファイル /etc/xlf.cfg を提供します。

単独ユーザーのシステム上で実行している場合、またはコンパイル・スクリプトや makefiles を持つコンパイル環境をすでに持っている場合は、デフォルトの構成ファイルをそのままにしておくこともできます。

それ以外の場合、特に多数のユーザーにいくつかの一連のコンパイラー・オプションの中から選択できるようにさせたい場合は、次のように新しく命名したスタンザを構成ファイルに追加して、既存のコマンドにリンクする新規コマンドを作成することもできます。たとえば、以下と同様の方法で指定して、 xlf95 コマンドとのリンクを作成することができます。

ln -s /bin/xlf95 /home/lisa/bin/my_xlf95

他の名前でコンパイラーを実行すると、コンパイラーは対応するスタンザにリストされているオプション、ライブラリーなどを使用します。

注:

  1. 構成ファイルには、リンクしたい他の名前付きスタンザが含まれています。詳細については、他のコンパイル・コマンドの作成を参照してください。

  2. デフォルトの構成ファイルに変更を加えてから、別のシステムに makefiles を移動させたりコピーしたりする場合は、変更した構成ファイルをコピーすることも必要です。

  3. コンパイラーのプログラム一時修正 (PTF) またはアップグレードをインストールすると、/etc/xlf.cfg ファイルが上書きされる場合があります。そのため、そのようなインストールを行う前に、加えた変更のコピーを必ず保管してください。

  4. 構成ファイル内では、タブを区切り文字として使用することはできません。構成ファイルを修正する場合、字下げは必ずスペースで行ってください。

  5. スタンザ xlf_rxlf90_r、および xlf95_r では、オペレーティング・システム・デフォルト・スレッド・インターフェース、つまり、AIX オペレーティング・システムの AIX バージョン 4.3.3 以降の POSIX1003.1-1996 標準をサポートします。

  6. メッセージ引き渡しインターフェース (MPI) とスレッド・プログラミングを混在させる場合、以下のような xlf.cfg ファイルの適切なスタンザを使用して適切なライブラリーにリンクし、正確にデフォルトの動作をするように設定してください。

    mpxlf
    MPI 使用時に、xlf 動作および f77 動作をするように指定します。
    mpxlf_r
    MPI とスレッド・プログラミングが混在するとき、 xlf_r 動作をするように指定します。 このスタンザには、mpxlf_r コマンドを指定してアクセスします。
    mpxlf_r7
    MPI とスレッド・プログラミングが混在するとき、 xlf_r7 動作をするように指定します。このスタンザには、mpxlf_r コマンドに -d7 オプションを指定してアクセスします。 POSIX pthreads API サポートのレベルは Draft 7 です。
    mpxlf90
    MPI 使用時に、xlf90 動作をするように指定します。
    mpxlf90_r
    MPI とスレッド・プログラミングが混在するとき、 xlf90_r 動作をするように指定します。 このスタンザには、mpxlf90_r コマンドを指定してアクセスします。
    mpxlf90_r7
    MPI とスレッド・プログラミングが混在するとき、 xlf90_r7 動作をするように指定します。このスタンザには、 mpxlf90_r コマンドに -d7 オプションを指定してアクセスします。 POSIX pthreads API サポートのレベルは Draft 7 です。
    mpxlf95
    MPI 使用時に、xlf95 動作をするように指定します。
    mpxlf95_r
    MPI とスレッド・プログラミングが混在するとき、 xlf95_r 動作をするように指定します。 このスタンザには、mpxlf95_r コマンドを指定してアクセスします。
    mpxlf95_r7
    MPI とスレッド・プログラミングが混在するとき、 xlf95_r7 動作をするように指定します。このスタンザには、 mpxlf95_r コマンドに -d7 オプションを指定してアクセスします。 POSIX pthreads API サポートのレベルは Draft 7 です。

属性

構成ファイルには、以下の属性が含まれています。

use
属性の値は、ローカル・スタンザだけではなく、指定したスタンザからも与えられます。単一値属性の場合は、ローカル・スタンザまたはデフォルト・スタンザに値が指定されていないと、 use 属性の値が適用されます。コンマで区切られているリストの場合は、 use 属性の値がローカル・スタンザの値に追加されます。単一レベルの use 属性だけがサポートされています。別の use 属性が入っているスタンザを指定する use 属性を指定してはなりません。

crt
32 ビット・モードで呼び出された場合、デフォルト (始動コードが入っているオブジェクト・ファイルのパス名)。リンケージ・エディターに第 1 パラメーターとして渡されます。

crt_64
64 ビット・モードで呼び出された場合、 -q64 (たとえば、始動コードが入っているオブジェクト・ファイルのパス名) を使用します。リンケージ・エディターに第 1 パラメーターとして渡されます。 |

mcrt
|crt の場合と同じですが、 |オブジェクト・ファイルには -p オプションのプロファイル・コードがあります。 |

mcrt_64
|crt_64 の場合と同じですが、 |オブジェクト・ファイルには -p オプションのプロファイル・コードがあります。

gcrt
crt と同じですが、オブジェクト・ファイルには -pg オプションのプロファイル・コードがあります。

gcrt_64
crt_64 と同じですが、オブジェクト・ファイルには -pg オプションのプロファイル・コードがあります。

cpp
C プリプロセッサーの絶対パス名。特定のサフィックス (通常は .F) で終わっているファイルに対して自動的に呼び出されます。

xlf
メイン・コンパイラー実行可能ファイルの絶対パス名。コンパイラー・コマンドは、このファイルを実行するドライバー・プログラムです。

code
最適化コード生成プログラムの絶対パス名。

xlfopt
たとえば、コンパイラー・オプションとリンカー・オプションが同じ文字を使用している場合には、コンパイラー・オプションと見なして、オプションの名前をリストします。このリストは、連結されている単一文字フラグのセットです。引き数を取るフラグの後にはコロンが続き、リスト全体が二重引用符で囲まれます。

as
アセンブラーの絶対パス名。

asopt
たとえば、コンパイラー・オプションとアセンブラー・オプションが同じ文字を使用している場合には、アセンブラー・オプションと見なして、オプションの名前をリストします。このリストは、連結されている単一文字フラグのセットです。引き数を取るフラグの後にはコロンが続き、リスト全体が二重引用符で囲まれます。 -W コンパイラー・オプションによってアセンブラーにオプションを渡すよりも、この属性を設定した方が便利です。

ld
リンカーの絶対パス名。

ldopt
たとえば、コンパイラー・オプションとリンカー・オプションが同じ文字を使用している場合には、リンカー・オプションと見なして、オプションの名前をリストします。このリストは、連結されている単一文字フラグのセットです。引き数を取るフラグの後にはコロンが続き、リスト全体が二重引用符で囲まれます。

認識されないオプションのほとんどは、いずれの場合もリンカーに渡されますが、-W コンパイラー・オプションによってリンカーにオプションを渡すよりも、この属性を設定した方が便利です。

options
コンマで区切られているオプションのストリング。コンパイラーは、これらのオプションが他のどのオプションよりも先にコマンド行に入力されたものと見なして処理します。この属性を使用すると、通常使用されるオプションを中央の 1 か所に入れることができるため、コマンド行を短くできます。

cppoptions
コンマで区切られているオプションのストリング。cpp は、これらのオプションが他のどのオプションよりも先にコマンド行に入力されたものと見なして処理します。この属性が必要な理由は、XL Fortran でコンパイルできる出力を作成するのに、通常 cpp オプションがいくつか必要になるからです。デフォルト・オプションは、出力で C スタイルのコメントを保持する -C と、 #line ディレクティブが生成されないようにする -P です。

fsuffix
Fortran ソース・ファイルに対して許可されているサフィックス。デフォルトでは f です。コンパイラーは単一コンパイル内のすべてのソース・ファイルが同じサフィックスを持つことを要求します。したがって、他のサフィックスを持つファイル、たとえば f95 などをコンパイルするには、構成ファイル内のこの属性を変更するか、 -qsuffix コンパイラー・オプションを使用してください。 -qsuffix についての詳細は、 -qsuffix オプションを参照してください。

cppsuffix
XL Fortran でコンパイルする前に、 C プリプロセッサー (cpp) でファイルをプリプロセスする必要があることを示すサフィックス。デフォルトは、F です。

osuffix
入力ファイルとして指定されているオブジェクト・ファイルを認識するのに使用されるサフィックス。デフォルトでは o です。

ssuffix
入力ファイルとして指定されているアセンブラー・ファイルを認識するのに使用されるサフィックス。デフォルトでは s です。

libraries
コンマで区切られている -l オプションで、すべてのプログラムをリンクするのに使用するライブラリーを指定します。

proflibs
コンマで区切られている -L オプションで、プロファイル・プログラムに対してリンカーが追加ライブラリーを探索するパスを指定します。

smplibraries
-qsmp コンパイラー・オプションを指定してコンパイルされたプログラムをリンクするのに使用するライブラリーを指定します。

hot
-qhot-qsmp、または -qipa オプションを指定した場合に、配列言語の最適化を行うプログラムの絶対パス名。

ipa
以下を実行するプログラムの絶対パス名。

bolt
バインド・プログラム (高速リンカー) の絶対パス名。

defaultmsg
デフォルト・メッセージ・ファイルの絶対パス名。

include_32
-q32 コンパイラー・オプションを指定して使用された探索パス、および pthreads .mod ファイルの 32 ビット・バージョンの位置を指定します。

include_64
-q64 コンパイラー・オプションを指定して使用された探索パス、および pthreads .mod ファイルの 64 ビット・バージョンの位置を指定します。

構成ファイルの実例

一般的な構成ファイルの例を以下に示します。

* Standard Fortran compiler
xlf95:    use        = DEFLT
          libraries  = -lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qfree=f90
 
* Alias for standard Fortran compiler
f95:      use        = DEFLT
          libraries  = -lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qfree=f90
          fsuffix    = f95
 
* Fortran 90 compiler
xlf90:    use        = DEFLT
          libraries  = -lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qxlf90=noautodealloc:nosignedzero,-qfree=f90
 
* Alias for Fortran 90 compiler
f90:      use        = DEFLT
          libraries  = -lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qxlf90=noautodealloc:nosignedzero,-qfree=f90
          fsuffix    = f90
 
* Original Fortran compiler
xlf:      use        = DEFLT
          libraries  = -lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qnozerosize,-qsave,-qalias=intptr,-qposition=appendold,
                       -qxlf90=noautodealloc:nosignedzero,
                       -qxlf77=intarg:intxor:persistent:noleadzero:gedit77
                       :noblankpad:oldboz:softeof
 
* Alias for original Fortran compiler
f77:      use        = DEFLT
          libraries  = -lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qnozerosize,-qsave,-qalias=intptr,-qposition=appendold,
                       -qxlf90=noautodealloc:nosignedzero,
                       -qxlf77=intarg:intxor:persistent:noleadzero:gedit77
                       :noblankpad:oldboz:softeof
 
* Alias for original Fortran compiler, used for XPG4 compliance
fort77:   use        = DEFLT
          libraries  = -lf,-lxlopt,-lxlf,-lxlomp_ser,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          options    = -qnozerosize,-qsave,-qalias=intptr,
                       -qposition=appendold,
                       -qxlf90=noautodealloc:nosignedzero,
                       -qxlf77=intarg:intxor:persistent:noleadzero
                       :gedit77:noblankpad:oldboz:softeof
 
* xlf with links to thread-safe components
xlf_r:  use        = DEFLT
        crt        = /lib/crt0_r.o
        mcrt       = /lib/mcrt0_r.o
        gcrt       = /lib/gcrt0_r.o
        libraries  = -L/lib/threads,-lxlf90_r,-lxlf,-lpthreads,-lm,-lc
        proflibs   = -L/lib/profiled,-L/usr/lib/profiled
        smplibraries = -L/lib/threads,-lxlf90_r,-lxlf,-lxlsmp,
                       -lpthreads,-lm,-lc
        options    = -qthreaded,-qnozerosize,-qsave,-qalias=intptr,
                     -qposition=appendold,
                     -qxlf90=noautodealloc:nosignedzero,
                     -qxlf77=intarg:intxor:persistent:noleadzero:gedit77
                     :noblankpad:oldboz:softeof
 
* xlf90 with links to thread-safe components
xlf90_r:  use        = DEFLT
          crt        = /lib/crt0_r.o
          mcrt       = /lib/mcrt0_r.o
          gcrt       = /lib/gcrt0_r.o
          libraries  = -L/lib/threads,-lxlf90_r,-lxlf,-lpthreads,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          smplibraries = -L/lib/threads,-lxlf90_r,-lxlf,-lxlsmp,
                         -lpthreads,-lm,-lc
          options    = -qxlf90=noautodealloc:nosignedzero,-qfree=f90,-qthreaded
 
* xlf95 with links to thread-safe components
xlf95_r:  use        = DEFLT
          crt        = /lib/crt0_r.o
          mcrt       = /lib/mcrt0_r.o
          gcrt       = /lib/gcrt0_r.o
          libraries  = -L/lib/threads,-lxlf90_r,-lxlf,-lpthreads,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          smplibraries = -L/lib/threads,-lxlf90_r,-lxlf,-lxlsmp,
                         -lpthreads,-lm,-lc
          options    = -qfree=f90,-qthreaded
 
* xlf with links to thread-safe components (AIX POSIX Draft 7 Threads)
xlf_r7: use        = DEFLT
        crt        = /lib/crt0_r.o
        mcrt       = /lib/mcrt0_r.o
        gcrt       = /lib/gcrt0_r.o
        libraries  = -L/lib/threads,-lxlfpthrds_compat,-lxlf90_r,
                     -lxlf,-lpthreads_compat,-lpthreads,-lm,-lc
        proflibs   = -L/lib/profiled,-L/usr/lib/profiled
        smplibraries = -L/lib/threads,-lxlfpthrds_compat,
                       -lxlf90_r,-lxlf,-lxlsmp,
                       -lpthreads_compat,-lpthreads,-lm,-lc
        options    = -qthreaded,-qnozerosize,-qsave,-qalias=intptr,
                     -qposition=appendold,
                     -qxlf90=noautodealloc:nosignedzero,
                     -qxlf77=intarg:intxor:persistent:noleadzero:gedit77:
                     noblankpad:oldboz:softeof
        include_32 = -I/usr/lpp/xlf/include_32_d7
 
* xlf90 with links to thread-safe components (AIX POSIX Draft 7 Threads)
xlf90_r7: use        = DEFLT
          crt        = /lib/crt0_r.o
          mcrt       = /lib/mcrt0_r.o
          gcrt       = /lib/gcrt0_r.o
          libraries  = -L/lib/threads,-lxlfpthrds_compat,-lxlf90_r,
                       -lxlf,-lpthreads_compat,-lpthreads,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          smplibraries = -L/lib/threads,-lxlfpthrds_compat,-lxlf90_r,-lxlf,
                         -lxlsmp,-lpthreads_compat,-lpthreads,-lm,-lc
          options    = -qxlf90=noautodealloc:nosignedzero,-qfree=f90,-qthreaded
          include_32 = -I/usr/lpp/xlf/include_32_d7
 
* xlf95 with links to thread-safe components (AIX POSIX Draft 7 Threads)
xlf95_r7: use        = DEFLT
          crt        = /lib/crt0_r.o
          mcrt       = /lib/mcrt0_r.o
          gcrt       = /lib/gcrt0_r.o
          libraries  = -L/lib/threads,-lxlfpthrds_compat,-lxlf90_r,-lxlf,
                       -lpthreads_compat,-lpthreads,-lm,-lc
          proflibs   = -L/lib/profiled,-L/usr/lib/profiled
          smplibraries = -L/lib/threads,-lxlfpthrds_compat,-lxlf90_r,
                         -lxlf,-lxlsmp,
                         -lpthreads_compat,-lpthreads,-lm,-lc
          options    = -qfree=f90,-qthreaded
          include_32 = -I/usr/lpp/xlf/include_32_d7
 
* PE Fortran, with Fortran 95 behavior
mpxlf95:  use        = DEFLT
          libraries  = -L/usr/lpp/ppe.poe/lib,-L/usr/lpp/ppe.poe/lib/ip,
                       -lmpi,-lvtd,-lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/usr/lpp/ppe.poe/lib/profiled,-L/lib/profiled,
                       -L/usr/lib/profiled
          options    = -qfree=f90,-binitfini:poe_remote_main
          include    = -I/usr/lpp/ppe.poe/include
 
* PE Fortran, with Fortran 90 behavior
mpxlf90:  use        = DEFLT
          libraries  = -L/usr/lpp/ppe.poe/lib,-L/usr/lpp/ppe.poe/lib/ip,-lmpi,
                       -lvtd,-lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/usr/lpp/ppe.poe/lib/profiled,-L/lib/profiled,
                       -L/usr/lib/profiled
          options    = -qxlf90=noautodealloc:nosignedzero,-qfree=f90,
                       -binitfini:poe_remote_main
          include    = -I/usr/lpp/ppe.poe/include
 
* PE Fortran, with FORTRAN 77 behavior
mpxlf:    use        = DEFLT
          libraries  = -L/usr/lpp/ppe.poe/lib,-L/usr/lpp/ppe.poe/lib/ip,-lmpi,
                       -lvtd,-lxlf90,-lxlf,-lm,-lc
          proflibs   = -L/usr/lpp/ppe.poe/lib/profiled,-L/lib/profiled,
                       -L/usr/lib/profiled
          options    = -qnozerosize,-qsave,-qalias=intptr,-qposition=appendold,
                       -qxlf90=noautodealloc:nosignedzero,
                       -qxlf77=intarg:intxor:persistent:noleadzero:gedit77
                       :noblankpad:oldboz:softeof,-binitfini:poe_remote_main
          include    = -I/usr/lpp/ppe.poe/include
 
* PE Fortran, with Fortran 95 behavior, and links to thread-safe components
mpxlf95_r:  use        = DEFLT
            crt        = /lib/crt0_r.o
            mcrt       = /lib/mcrt0_r.o
            gcrt       = /lib/gcrt0_r.o
            libraries  = -L/usr/lpp/ppe.poe/lib/threads,
                         -L/usr/lpp/ppe.poe/lib,
                         -L/usr/lpp/ppe.poe/lib/ip,-L/lib/threads,
                         -lmpi_r,-lvtd_r,-lxlf90_r,-lxlf,
                         -lpthreads,-lm_r,-lm,-lc_r,
                         -lc,/usr/lpp/ppe.poe/lib/libc.a
            proflibs   = -L/usr/lpp/ppe.poe/lib/profiled/threads,
                         -L/usr/lpp/ppe.poe/lib/profiled,
                         -L/lib/profiled,-L/usr/lib/profiled
            smplibraries = -L/usr/lpp/ppe.poe/lib/threads,
                           -L/usr/lpp/ppe.poe/lib,
                           -L/usr/lpp/ppe.poe/lib/ip,
                           -L/lib/threads,-lmpi_r,-lvtd_r,
                           -lxlf90_r,-lxlf,-lxlsmp,-lpthreads,
                           -lm_r,-lm,-lc_r,
                           -lc,/usr/lpp/ppe.poe/lib/libc.a
            options    = -qthreaded,-qfree=f90,-binitfini:poe_remote_main
            include    = -I/usr/lpp/ppe.poe/include
 
* PE Fortran, with Fortran 90 behavior, and links to thread-safe components
mpxlf90_r:  use        = DEFLT
            crt        = /lib/crt0_r.o
            mcrt       = /lib/mcrt0_r.o
            gcrt       = /lib/gcrt0_r.o
            libraries  = -L/usr/lpp/ppe.poe/lib/threads,
                         -L/usr/lpp/ppe.poe/lib,
                         -L/usr/lpp/ppe.poe/lib/ip,
                         -L/lib/threads,-lmpi_r,-lvtd_r,
                         -lxlf90_r,-lxlf,-lpthreads,-lm_r,
                         -lm,-lc_r,-lc,
                              /usr/lpp/ppe.poe/lib/libc.a
            proflibs   = -L/usr/lpp/ppe.poe/lib/profiled/threads,
                         -L/usr/lpp/ppe.poe/lib/profiled,
                         -L/lib/profiled,-L/usr/lib/profiled
            smplibraries = -L/usr/lpp/ppe.poe/lib/threads,
                           -L/usr/lpp/ppe.poe/lib,
                           -L/usr/lpp/ppe.poe/lib/ip,
                           -L/lib/threads,-lmpi_r,-lvtd_r,
                           -lxlf90_r,-lxlf,-lxlsmp,-lpthreads,
                           -lm_r,-lm,-lc_r,
                           -lc,/usr/lpp/ppe.poe/lib/libc.a
            options    = -qxlf90=noautodealloc:nosignedzero,
                         -qthreaded,-qfree=f90,
                         -binitfini:poe_remote_main
            include    = -I/usr/lpp/ppe.poe/include
 
* PE Fortran, with FORTRAN 77 behavior, and links to thread-safe components
mpxlf_r:  use        = DEFLT
          crt        = /lib/crt0_r.o
          mcrt       = /lib/mcrt0_r.o
          gcrt       = /lib/gcrt0_r.o
          libraries  = -L/usr/lpp/ppe.poe/lib/threads,
                       -L/usr/lpp/ppe.poe/lib,
                       -L/usr/lpp/ppe.poe/lib/ip,-L/lib/threads,
                       -lmpi_r,-lvtd_r,-lxlf90_r,
                       -lxlf,-lpthreads,-lm_r,-lm,-lc_r,
                       -lc,/usr/lpp/ppe.poe/lib/libc.a
          proflibs   = -L/usr/lpp/ppe.poe/lib/profiled/threads,
                       -L/usr/lpp/ppe.poe/lib/profiled,
                       -L/lib/profiled,-L/usr/lib/profiled
          smplibraries = -L/usr/lpp/ppe.poe/lib/threads,
                         -L/usr/lpp/ppe.poe/lib,
                         -L/usr/lpp/ppe.poe/lib/ip,
                         -L/lib/threads,-lmpi_r,-lvtd_r,
                         -lxlf90_r,-lxlf,-lxlsmp,-lpthreads,
                         -lm_r,-lm,-lc_r,
                         -lc,/usr/lpp/ppe.poe/lib/libc.a
          options    = -qthreaded,-qnozerosize,-qsave,-qalias=intptr,
                       -qposition=appendold,
                       -qxlf90=noautodealloc:nosignedzero,
                       -qxlf77=intarg:intxor:persistent:noleadzero:gedit77
                       :noblankpad:oldboz:softeof,-binitfini:poe_remote_main
          include    = -I/usr/lpp/ppe.poe/include
 
* mpxlf95_r, links to thread-safe components (AIX POSIX Draft 7 Threads)
mpxlf95_r7: use        = DEFLT
            crt        = /lib/crt0_r.o
            mcrt       = /lib/mcrt0_r.o
            gcrt       = /lib/gcrt0_r.o
            libraries  = -L/usr/lpp/ppe.poe/lib/threads,
                         -L/usr/lpp/ppe.poe/lib,
                         -L/usr/lpp/ppe.poe/lib/ip,-L/lib/threads,-lmpi_r,
                         -lvtd_r,-lxlfpthrds_compat,-lxlf90_r,-lxlf,
                         -lpthreads_compat,
                         -lpthreads,-lm_r,-lm,-lc_r,
                         -lc,/usr/lpp/ppe.poe/lib/libc.a
            proflibs   = -L/usr/lpp/ppe.poe/lib/profiled/threads,
                         -L/usr/lpp/ppe.poe/lib/profiled,
                         -L/lib/profiled,-L/usr/lib/profiled
            smplibraries = -L/usr/lpp/ppe.poe/lib/threads,
                           -L/usr/lpp/ppe.poe/lib,
                           -L/usr/lpp/ppe.poe/lib/ip,-L/lib/threads,
                           -lmpi_r,-lvtd_r,
                           -lxlfpthrds_compat,-lxlf90_r,-lxlf,-lxlsmp,
                           -lpthreads_compat,
                           -lpthreads,-lm_r,-lm,-lc_r,
                           -lc,/usr/lpp/ppe.poe/lib/libc.a
            options    = -qthreaded,-qfree=f90,-binitfini:poe_remote_main
            include    = -I/usr/lpp/ppe.poe/include
            include_32 = -I/usr/lpp/xlf/include_32_d7
 
* mpxlf90_r, links to thread-safe components (AIX POSIX Draft 7 Threads)
mpxlf90_r7: use        = DEFLT
            crt        = /lib/crt0_r.o
            mcrt       = /lib/mcrt0_r.o
            gcrt       = /lib/gcrt0_r.o
            libraries  = -L/usr/lpp/ppe.poe/lib/threads,
                         -L/usr/lpp/ppe.poe/lib,
                         -L/usr/lpp/ppe.poe/lib/ip,-L/lib/threads,-lmpi_r,
                         -lvtd_r,-lxlfpthrds_compat,-lxlf90_r,-lxlf,
                         -lpthreads_compat,
                         -lpthreads,-lm_r,-lm,-lc_r,
                         -lc,/usr/lpp/ppe.poe/lib/libc.a
            proflibs   = -L/usr/lpp/ppe.poe/lib/profiled/threads,
                         -L/usr/lpp/ppe.poe/lib/profiled,
                         -L/lib/profiled,-L/usr/lib/profiled
            smplibraries = -L/usr/lpp/ppe.poe/lib/threads,
                           -L/usr/lpp/ppe.poe/lib,
                           -L/usr/lpp/ppe.poe/lib/ip,
                           -L/lib/threads,-lmpi_r,-lvtd_r,
                           -lxlfpthrds_compat,-lxlf90_r,-lxlf,-lxlsmp,
                           -lpthreads_compat,
                           -lpthreads,-lm_r,-lm,-lc_r,-lc,
                           /usr/lpp/ppe.poe/lib/libc.a
            options    = -qxlf90=noautodealloc:nosignedzero,-qthreaded,
                         -qfree=f90,
                         -binitfini:poe_remote_main
            include    = -I/usr/lpp/ppe.poe/include
            include_32 = -I/usr/lpp/xlf/include_32_d7
 
* mpxlf_r, links to thread-safe components (AIX POSIX Draft 7 Threads)
mpxlf_r7: use        = DEFLT
          crt        = /lib/crt0_r.o
          mcrt       = /lib/mcrt0_r.o
          gcrt       = /lib/gcrt0_r.o
          libraries  = -L/usr/lpp/ppe.poe/lib/threads,
                       -L/usr/lpp/ppe.poe/lib,
                       -L/usr/lpp/ppe.poe/lib/ip,-L/lib/threads,
                       -lmpi_r,-lvtd_r,
                       -lxlfpthrds_compat,-lxlf90_r,-lxlf,
                       -lpthreads_compat,
                       -lpthreads,-lm_r,-lm,-lc_r,-lc,
                       /usr/lpp/ppe.poe/lib/libc.a
          proflibs   = -L/usr/lpp/ppe.poe/lib/profiled/threads,
                       -L/usr/lpp/ppe.poe/lib/profiled,
                       -L/lib/profiled,-L/usr/lib/profiled
          smplibraries = -L/usr/lpp/ppe.poe/lib/threads,
                         -L/usr/lpp/ppe.poe/lib,
                         -L/usr/lpp/ppe.poe/lib/ip,
                         -L/lib/threads,-lmpi_r,-lvtd_r,
                         -lxlfpthrds_compat,-lxlf90_r,-lxlf,-lxlsmp,
                         -lpthreads_compat,
                         -lpthreads,-lm_r,-lm,-lc_r,
                         -lc,/usr/lpp/ppe.poe/lib/libc.a
          options    = -qthreaded,-qnozerosize,-qsave,
                       -qalias=intptr,-qposition=appendold,
                       -qxlf90=noautodealloc:nosignedzero,
                       -qxlf77=intarg:intxor:persistent:noleadzero:gedit77
                       :noblankpad:oldboz:softeof,-binitfini:poe_remote_main
          include    = -I/usr/lpp/ppe.poe/include
          include_32 = -I/usr/lpp/xlf/include_32_d7
 
* Common definitions
DEFLT:    xlf        = /usr/lpp/xlf/bin/xlfentry
          crt        = /lib/crt0.o
          mcrt       = /lib/mcrt0.o
          gcrt       = /lib/gcrt0.o
          crt_64     = /lib/crt0_64.o
          mcrt_64    = /lib/mcrt0_64.o
          gcrt_64    = /lib/gcrt0_64.o
          include_32 = -I/usr/lpp/xlf/include_32
          include_64 = -I/usr/lpp/xlf/include_64
          fppv       = /usr/lpp/xlf/bin/fppv
          fppk       = /usr/lpp/xlf/bin/fppk
          dis        = /usr/lpp/xlf/bin/dis
          code       = /usr/lpp/xlf/bin/xlfcode
          hot        = /usr/lpp/xlf/bin/xlfhot
          ipa        = /usr/lpp/xlf/bin/ipa
          bolt       = /usr/lpp/xlf/bin/bolt
          as         = /bin/as
          ld         = /bin/ld
          cppoptions = -C
          options    = -bh:4
          defaultmsg = /usr/lpp/xlf/bin/default_msg

XL Fortran は、ライブラリー libxlf90_t.a に加えて、ライブラリー libxlf90_r.a も用意しています。ライブラリー libxlf90_r.a は、部分的スレッド・サポートの実行時ライブラリーである libxlf90_t.a のスーパーセットです。ファイル xlf.cfg は、xlf90_rxlf90_r7xlf95_rxlf95_r7xlf_r、および xlf_r7 コマンドの使用時に libxlf90_r.a に自動的にリンクするように設定されています。

関連情報:
-F オプションは、別の構成ファイルか構成ファイルの特定のスタンザ、あるいはその両方を選択するのに使用することができます。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]