C/C++ アプリケーション実行時 および Solaris 上での SQL プロシージャー実行時の問題
Sun WorkShop C/C++ コンパイラーを使用中に、実行可能なプログラムで以下のようなエラーを受け取るといった 問題が発生する場合があります。
libdb2.so にリンクする際、コンパイラーが有効な実行可能プログラムを生成しないといった問題が起きる場合があります。 この問題を解決するために考えられることは、コンパイル、およびリンク・コマンドに以下のコンパイラー・オプションを追加します:
-xarch=v8plusa
たとえば、サンプル・アプリケーションの dynamic.sqc をコンパイルしている場合:
embprep dynamic sample embprep utilemb sample cc -c utilemb.c -xarch=v8plusa -I/export/home/db2inst1/sqllib/include cc -o dynamic dynamic.c utilemb.o -xarch=v8plusa -I/export/home/db2inst1/sqllib/include \ -L/export/home/db2inst1/sqllib/lib -R/export/home/db2inst1/sqllib/lib -l db2
注:
db2set DB2_SQLROUTINE_COMPILE_COMMAND="cc -# -Kpic -xarch=v8plusa -I$HOME/sqllib/include \ SQLROUTINE_FILENAME.c -G -o SQLROUTINE_FILENAME -L$HOME/sqllib/lib -R$HOME/sqllib/lib -ldb2