Intel C++ Compiler V5.0/6.0

Windows Itanium システム: 最適化

2.1.3 -Qipo を使用するとリンカ エラーが生じる。

/Qipo オプションを指定した場合、Intel(R) C++ Compiler 5.0 でコンパイルされたプログラムのリンクが失敗する場合があります。ここでは、/Qipo を使用する際に生じる  2 つの既知の問題について説明します。

 

Intel(R) C++ Compiler 5.0/6.0 では、/Qipo と /Gy オプションを同時に指定すると、COFF32 のセクション数の制限を超過した、32K 以上のセクションでオブジェクト ファイルを生成する場合があります。/Gy オプションはデフォルトで、 /O1 や /O2 オプションが指定された場合に有効になります。この問題が生じた場合は、次のようなリンカ エラーが出力されます:

 

Invalid or corrupt file. no symtab for camdat section 0xffff8000

 

Intel(R) C++ Compiler 5.0 では、/Qipo と /Gy- オプションを同時に指定した場合、64K 以上のリロケーションでオブジェクト ファイルが生成される場合があります。Microsoft* 32-bit Incremental Linker である LINK.exe では、64K の制限を超過するリロケーションはできません。この問題が生じた場合、ユーザーのプログラムは、実行時にアドレス 0 へのコールで失敗します。