Oracle Solaris Studio 12.2:C++ 用户指南

11.6 使用共享库

C++ 编译器附带下列 C++ 运行时共享库:

在 Linux 上,C++ 编译器附带这些附加库:

在 Solaris 10 上,这些附加库以及其他一些库作为 Solaris C++ 运行时库软件包 SUNWlibC 的一部分安装。

如果应用程序使用 C++ 编译器附带的任何共享库,则 CC 驱动程序会安排运行路径(请参阅 -R 选项),该运行路径指向将在可执行文件中生成库的位置。如果之后将可执行文件部署到另一台计算机上,而该计算机上并没有在同一位置安装同一编译器版本,将找不到所需的共享库。

在程序启动时,可能根本找不到此库,或可能使用错误版本的库,从而导致错误的程序行为。在这种情况下,应该将所需库与可执行文件一起提供,并使用指向这些库将要安装的位置的运行路径进行生成。

Using and Redistributing Solaris Studio Libraries in an Application》(《在应用程序中使用与重新分发 Solaris Studio 库》一文中详细讨论了该主题并提供了示例,请参见 http://developers.sun.com/sunstudio/documentation/techart/stdlibdistr.html