如果在不同的步骤中进行编译和链接,则使用以下编译器选项时,一定要在编译和链接中保持一致:
-B
-compat
–fast
-g
-g0
-library
-misalign
-mt
-p
-xa
-xarch
–xcg92 和 -xcg89
-xipo
-xpagesize
-xpg
-xprofile
-xtarget
如果使用其中任何选项编译子程序,请确保在链接时也要使用相同的选项:
如果使用 -library、-fast、-xtarget 和 -xarch 选项,必须确保包括相应的链接程序选项,如果编译和链接同时进行的话,就可以忽略这些链接程序选项。
如果使用 -p、-xpg 和 -xprofile,则在一个阶段中包括选项而在其他阶段中不包括相应选项并不影响程序的正确性,但不能进行文件配置。
如果使用 -g 和 -g0,则在一个阶段中包括选项而在其他阶段中不包括相应选项并不影响程序的正确性,但会影响调试程序的能力。对于没有使用其中任一选项编译但使用 -g 或 -g0 链接的模块,将无法正确调试。请注意,要对包含函数 main 的模块进行调试,通常必须使用 -g 选项或 -g0 选项对其进行编译。
在以下示例中,使用 -xcg92 编译器选项编译程序。此选项是包含了 -xtarget=ss1000 的宏,扩展为: -xarch=v8 -xchip=super -xcache=16/64/4:1024/64/1。
example% CC -c -xcg92 sbr.cc example% CC -c -xcg92 smain.cc example% CC -xcg92 sbr.o smain.o |