Sun Studio 12:C++ 用户指南

交互

如果使用 -library 指定了库,则在编译期间会设置适当的 –I 路径。在链接期间会设置适当的 –L、–Y P、– R 路径和 –l 选项。

该选项会累积而不覆盖。

在使用区间运算库时,必须包括以下库之一:libClibCstdlibiostream

使用 -library 选项可确保针对指定库的 -l 选项按正确顺序传送。例如,对于 -library=rwtools7, iostream-library=iostream,rwtools7-l 选项都是按照 - lrwtool-liostream 顺序传递给 ld

指定的库在系统支持库链接之前链接。

不能在同一个命令行上使用 -library=sunperf-xlic_lib=sunperf

不能在同一个命令行上使用 -library=stlport4-library=Cstd

每次只能使用一个 Rogue Wave 工具库,而且不能将任何 Rogue Wave 工具库与 -library=stlport4 一起使用。

在标准模式(缺省模式)下包含传统 iostream Rogue Wave 工具库时,必须也要包含 libiostream(有关其他信息,请参见《 C++ 迁移指南》。只能在标准模式下使用标准 iostream Rogue Wave 工具库。以下命令示例显示了有效使用和无效使用 Rogue Wave tools.h++ 库选项的情况。


% CC -compat -library=rwtools7 foo.cc        <-- valid
% CC -compat -library=rwtools7_std foo.cc    <-- invalid

% CC -library=rwtools7,iostream foo.cc       <-- valid, classic iostreams
% CC -library=rwtools7 foo.cc                <-- invalid

% CC -library=rwtools7_std foo.cc            <-- valid, standard iostreams
% CC -library=rwtools7_std,iostream foo.cc   <-- invalid

如果同时包含 libCstdlibiostream,必须小心,不要在程序中同时使用新旧格式的 iostream(例如,coutstd::cout)访问同一个文件。如果从传统和标准 iostream 代码访问同一文件,那么在相同的程序中混合标准 iostream 和传统 iostream 可能会出现问题。

既未链接 libC 也未链接 libCrun 的程序可能无法使用 C++ 语言的所有功能。

如果指定了-xnolib,则忽略 -library