2013-04-30 106 views
0

我想从我的C++程序中使用MySQL客户端库(libmysqlclient.so)连接ro MySQL服务器。 Solaris上的此libmysqlclient.so与libstlport.so有依赖关系。Solaris:libSTLPort.so与libCstd.so的二进制兼容性?

libstlport.so.1 =>  (file not found) 

这是我可以用“ldd”命令看到的东西。我在Oracle文档中看到,内置的libCstd.so和libstlport.so是二进制兼容的。所以,我可以复制libCstd.so,并将其重命名为libstlport.so或类似的东西,使MySQL客户端库工作?

回答

1

根据Oracle Solaris Studio 12.2: C++ User's Guide

STLport的是二进制兼容默认的libCstd。如果使用标准库的STLport实现 ,那么必须使用 选项-library = stlport4编译并链接所有文件,包括第三方库。这意味着,例如,您不能将STLport实现和C++区间数学库012CslibCsunimath一起使用。原因是libCsunimath是 使用默认库标头编译,而不是STLport。