繁体   English   中英

使用cmake的不同链接和负载库路径

[英]different link and load library paths using cmake

我有同一个库libabc.so两个版本,我必须将程序链接到一个版本,并在执行该程序时加载另一个版本(运行可执行程序时,加载程序应加载另一个库)。

我将两个版本放置在不同的路径中,如何使用cmake进行指定?

我希望我已经说清楚了,谢谢。

@Tsyvarev的注释基本上给出了答案,这里有更多详细信息。

假设将链接和负载这两个版本放置在link_path/libabc.soload_path/libabc.so ,则CMakeLists.txt应该类似于

...
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set(CMAKE_INSTALL_RPATH load_path;${CMAKE_INSTALL_RPATH})  # load path

...
target_link_libraries(xxx link_path/libabc.so)  # link path

暂无
暂无

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

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