[英]how can I make a shared library work on different versions of libraries it depends (using cmake)?
我将程序(取决于Boost)包装到一个共享库(例如libabc.so
)中,该库在我的机器上可以正常工作。
当我将libabc.so
复制到另一台安装了不同Boost版本的机器上时,编译器无法将libabc.so
链接到该版本,并且当我键入ldd libabc.so
它说没有找到boost库。
如何使用cmake解决该问题?
有没有办法将所有依赖的库包装到一个文件libabc.so
?
我知道这是一个入门级的问题,可能在SO上已经有一些类似的问题,但我没有找到,但是这个问题似乎没有使用CMake链接Boost库的静态版本 。
使用boost bcp将您的boost版本包装在另一个名称空间中,然后您可以在同一应用程序中同时存在多个boost版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.