c++ - 在 g++ 中生成 "-L"和 -rpath 标志的等效函数是什么

标签 c++ cmake makefile

当我使用手动编写的 makefile 编译我的 c++ 程序时,我使用以下命令:

LNK_FLAG      = -L $(LIB_PATH) -lnameofmylib
RPATH_FLAG    = -Wl,-rpath,$(LIB_PATH)

我使用 make LIB_PATH=/path/to/my/lib 来构建我的程序。

现在我想使用 cmake 来构建我的程序,所以,我想知道是否有一些机制可以做到这一点?还是我必须使用 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L ${LIB_PATH} -lnameofmylib -Wl,-rpath,${LIB_PATH}")

最佳答案

如果要添加库搜索路径,请使用 link_directories .要链接库,请使用 link_libraries .这可以在任何操作系统或编译器/链接器上移植,或者更少地使用编译器依赖的功能。

关于c++ - 在 g++ 中生成 "-L"和 -rpath 标志的等效函数是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36123448/

相关文章:

cmake - 在自定义命令中调用找到的可执行文件的正确方法?

c++ - Makefile 条件语句

makefile - 将 Makefile 从平面目录结构发展为子目录结构

c++ - 如何在 Windows 和 Linux 之间移植的 visual studio C++ 中进行串口编程?

c++ - 为什么我的功能没有运行?

c++ - 从 boost python 模块内的 pyside 导入类?

c++ - 未安装的包上的 CMake "find_package"命令意外成功

xcode - 尝试从 cmake 文件夹生成 Xcode 项目时,出现与 Xcode 新构建系统相关的错误。任何可能的解决方案?

linux - 这个 make 命令有什么作用?

c++ - 使用 memcpy 将 float 组复制到 uint8_t 数组是否有效