如何在cmake中逃脱$?

时间:2018-12-19 21:46:03

标签: cmake

我对以下一行感兴趣:

add_link_options(-Wl,-rpath=$ORIGIN)

但是,在可执行文件中,$扩展为$$。例如

15:19:52 Debug # readelf -a mybinary | egrep -i runpath
0x000000000000001d (RUNPATH)            Library runpath: [$$ORIGIN]

在构建后,可以使用patchelf来获得这种效果,但是如果可能的话,希望将其放在cmake中。

我尝试过\ $,$$$$$$$$和$ ORIGIN之类的东西时,运气不佳,除了50美分以外,别无其他。

这是与cmake 3.13.1一起使用的。

编辑:详细cmake输出:

/usr/bin/c++  -g  "-Wl,-rpath=\$$ORIGIN" CMakeFiles/mybinary.dir/....

Edit2:这有效:

set(CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS} "-Wl,-rpath=$ORIGIN")
...
/usr/bin/c++  -g  -Wl,-rpath=$ORIGIN CMakeFiles/mybinary.dir/...

0 个答案:

没有答案