用静态库的完整路径链接可执行文件
linking executable with a full path to the static library
我正在以以下方式链接和构建库中的可执行文件
mpic++ -Wall -o example example.o /path/to/my/lib/libmy.a
otool -L example
显示它与
example:
libmy.a (compatibility version 0.0.0, current version 0.0.0)
/opt/openmpi/lib/libmpi_cxx.1.dylib (compatibility version 2.0.0, current version 2.1.0)
/opt/openmpi/lib/libmpi.1.dylib (compatibility version 2.0.0, current version 2.3.0)
....
是否有办法保持完整的路径链接?可能是什么旗帜,但我没找到。所以otool
显示如下:
/path/to/my/lib/libmy.a (...)
....
好的,解决方案似乎是使用:
install_name_tool -change "libmy.a" "/path/to/lib/libmy.a" example
相关文章:
- 在 Visual Studio 2010(及更高版本)中定义包含或链接路径变量的位置
- 如何在g++中从链接库中删除路径
- CMake 链接 2 个具有相对路径的库
- 在可执行文件中使用带有符号链接的相对路径
- 链接库时的默认目录上的GCC或G 路径搜索顺序
- CMake为什么通过相对路径链接外部库
- mingw链接路径
- 如何将共享库与具有相对路径的 CMake 链接
- 使用 cmake 的不同链接和加载库路径
- 编译C++中动态链接库,存在运行路径问题
- 访问注册表数据以设置链接器和包含路径
- CMake链接路径
- C++:链接器找不到 -lcrypto,但库在路径中
- CMake:从外部项目链接共享C++对象会生成具有相对路径的二进制文件,而不是绝对路径
- 如何避免动态链接的完整路径
- 路径文件存在导致链接器错误 2028/2019
- G++添加包含和链接路径
- 如何找到外部变量的链接路径
- 在不使用完整路径的情况下创建共享库链接
- 用静态库的完整路径链接可执行文件