Ошибки выполнения прикладных программ C/C++ и процедур SQL в Solaris
Если при использовании компилятора Sun WorkShop Compiler 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