Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在cmake中设置rpath原点?_Cmake_Linker_Shared Libraries - Fatal编程技术网

如何在cmake中设置rpath原点?

如何在cmake中设置rpath原点?,cmake,linker,shared-libraries,Cmake,Linker,Shared Libraries,我找到了,但我的cmake没有目标链接选项 我没有安装二进制文件,我只是用RUNTIME\u OUTPUT\u目录来“安装”它,所以我认为CMAKE\u INSTALL\u RPATH不起作用。尽管如此,我还是按照问题中的建议尝试了SET(CMAKE\u INSTALL\u RPATH“$\{ORIGIN\}”),但我得到了 Syntax error in cmake code at .../CMakeLists.txt:25 when parsing string $

我找到了,但我的cmake没有目标链接选项

我没有安装二进制文件,我只是用
RUNTIME\u OUTPUT\u目录
来“安装”它,所以我认为
CMAKE\u INSTALL\u RPATH
不起作用。尽管如此,我还是按照问题中的建议尝试了
SET(CMAKE\u INSTALL\u RPATH“$\{ORIGIN\}”)
,但我得到了

  Syntax error in cmake code at

  .../CMakeLists.txt:25

  when parsing string

    $\{ORIGIN\}

  Invalid escape sequence \{
我需要设置我在Makefile中使用的rpath:

-rpath=\$$ORIGIN/lib

如何在cmake中实现这一点?

下面是我在3.14上的作品

  set(CMAKE_INSTALL_RPATH $ORIGIN)

这是Craig Scott在其CppCon 2019演讲(幻灯片100/110)中推荐的内容。

您使用的是什么版本的CMake?根据幻灯片,在add_可执行文件之前添加该行非常重要