简体   繁体   English

Solaris:libSTLPort.so与libCstd.so的二进制兼容性?

[英]Solaris: Binary Compatibility of libSTLPort.so with libCstd.so?

I'm trying to connect ro MySQL Server using MySQL Client Library (libmysqlclient.so) from my C++ Program. 我正在尝试使用C ++程序中的MySQL客户端库(libmysqlclient.so)连接ro MySQL服务器。 This libmysqlclient.so on Solaris has a dependency with libstlport.so. 在Solaris上,此libmysqlclient.so与libstlport.so具有依赖关系。

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

This is what I can see with "ldd" command. 这是我可以通过“ ldd”命令看到的内容。 I read in Oracle docs that inbuilt libCstd.so and libstlport.so are binary-compatible. 我在Oracle文档中读到,内置的libCstd.so和libstlport.so是二进制兼容的。 So Can I copy libCstd.so and rename it to libstlport.so or something like this to make MySQL Client Library to work ?? 所以我可以复制libCstd.so并将其重命名为libstlport.so或类似的东西来使MySQL客户端库工作吗?

According to Oracle Solaris Studio 12.2: C++ User's Guide : 根据《 Oracle Solaris Studio 12.2:C ++用户指南》

STLport is binary incompatible with the default libCstd. STLport是二进制的,与默认的libCstd 不兼容 If you use the STLport implementation of the standard library, then you must compile and link all files, including third-party libraries, with the option -library=stlport4. 如果使用标准库的STLport实现,则必须使用选项-library = stlport4编译并链接所有文件,包括第三方库。 This means, for example, that you cannot use the STLport implementation and the C++ interval math library libCsunimath together. 例如,这意味着您不能一起使用STLport实现和C ++区间数学库libCsunimath。 The reason for this is that libCsunimath was compiled with the default library headers, not with STLport. 原因是libCsunimath是使用默认库头而不是STLport编译的。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM