C++ 编译器附带下列 C++ 运行时共享库:
libCCexcept.so.1(仅适用于 SPARC)
libstlport.so.1
libstdc++.so.6
libgcc_s.so.1
libCrunG3.so.1
libstatomic.so.1
在 Oracle Linux 上,C++ 编译器附带了以下附加库:
libCrun.so.1
libCstd.so.1
libdemangle.so
libiostream.so.1
在最新的 Oracle Solaris 发行版中,这些附加库以及其他一些库作为 Oracle Solaris C++ 运行时库软件包 SUNWlibC 的一部分安装。
如果应用程序使用 C++ 编译器附带的任何共享库,则 CC 驱动程序会安排运行路径(请参阅 -R 选项),该运行路径指向将在可执行文件中生成库的位置。如果之后将可执行文件部署到另一台计算机上,而该计算机上并没有在同一位置安装同一编译器版本,将找不到所需的共享库。有关使用 libstatomic 部署应用程序的信息,请参阅Oracle Developer Studio 12.5:发行说明。
在程序启动时,可能根本找不到此库,或可能使用错误版本的库,从而导致错误的程序行为。在这种情况下,应该将所需库与可执行文件一起提供,并使用指向这些库将要安装到的位置的运行路径进行生成。
文章“Using and Redistributing Solaris Studio Libraries in an Application”(在应用程序中使用和重新分配 Solaris Studio 库)包含了本主题的完整说明及示例。它是在 Oracle Developer Studio 产品站点 (http://www.oracle.com/technetwork/server-storage/solarisstudio/) 上提供的。