cmake - -dead_strip 与 --gc-sections 链接器选项
问题描述
我正在尝试使用 CMake 在 Android 和 iOS 上交叉构建一个 SW。Android 项目使用 GNU ld
,而 iOS 使用lld
. 我需要添加链接器选项,以将链接库中的死代码剥离到两个工具链中。我确定了在 GNUld
上添加链接器选项以及添加链接器选项的--gc-sections
方法。所以,我的问题是:是否有另一种方法来检查交叉编译平台,如下所示?lld
-dead_strip
if(CMAKE_SYSTEM_NAME STREQUAL Android)
target_link_options(GarminAis PRIVATE LINKER:--gc-sections)
elseif(CMAKE_SYSTEM_NAME STREQUAL APPLE)
target_link_options(GarminAis PRIVATE LINKER:-dead_strip)
endif()
我强烈希望采用统一的方法。
提前感谢您的帮助
解决方案
推荐阅读
- qt - 当我更新 QGraphicsPixmapItem 的 QPixmap 时,图像从场景中消失
- c# - 如何在 Unity GUI 中构建三个水平触摸的按钮
- c++ - 我们的向量
inputWords(字符串文件名); - python - [Word2Vec][gensim] 使用参数 min_count 处理词汇表中的缺失词
- ios - 如何正确停止展示 AdMob 横幅广告?
- javascript - Oracle 和 React:如何保持下次页面加载的顺序
- css - 在 Firefox 中看起来不好的线性渐变
- c++ - 如何在两个 C++20 范围内实现惰性求值函数?
- excel - sumproduct 中的间接在此代码中不起作用
- linux - Linux 和 Windows 之间的文本编码