cmake - 如何在 CMake 中使用版本号和共享库后缀(.so 或 .dylib)
问题描述
在 CMake 中,我正在安装一个共享库,它可以在我的 Linux 机器上安装为 libname.so.1.5.0
但是,为了与 Mac 兼容,我必须支持使用任何共享库后缀。我设置了要安装的 CMake,${libnameCMAKE_SHARED_LIBRARY_SUFFIX}.${OPENTRACING_VERSION_STRING}
它再次可以在我的机器上运行,但不能在 Mac 上运行。由于某种原因生成的 .dylib 具有 libname.1.5.0.dylib 的命名约定
有什么办法可以吗
- 将任一命名约定更改为另一个?
- 有 CMake 检测系统架构并有多个调用吗?
- 任何其他想法将不胜感激!我从未使用过 OSX,所以不确定 .dylibs 是如何工作的。
解决方案
据我所知,如果不在 if/else 分支中破解它们,这是不可能做到的。我决定在我的INSTALL
调用中添加命令,直接移动我需要的文件。它最终复制了额外的不必要的文件,但这是我唯一能想到的。
推荐阅读
- visual-studio - 如何在 Visual Studio 编辑器中调整左边距?
- smtp - 将电子邮件从 Apache Camel 发送到 Office.365 时出现 SMTP 错误 530 5.7.57
- javascript - 在 Electron 中关闭父窗口时防止子窗口关闭
- unity3d - 如何切片 3D 对象
- javascript - 如何检查 javascript watch 是否正在运行?
- angular - ngbTypeahead - 传递参数
- python - 在 python 中使用 sqlite3 时出错
- encryption - 如何使用 PGP 非对称加密进行身份验证?
- angular - 使用angular4在html中显示数据
- python - 当我用 pytorch 加载 resnet50.pth 的 state_dict 时出了什么问题