mac上cmake编译的库A,给其他库B使用报错ld64.lld: error

ld64.lld: error xxxx.a(xxx.c.o) has version 13.5.0, which is newer than target minimum of 10.11.0

根本原因: 在mac上编译库B时,macosx-version-min为10.11,即macosx sdk的最低版本

所以要求cmake编译的库A也应该指定macosx-version-min为10.11

CMakeLists.txt中添加

SET(CMAKE_OSX_DEPLOYMENT_TARGET 10.11)

另外,编译B库时,根据B库的要求,没有使用xcode最新的sdk版本,而是自己下载的MacOSX11.3.sdk,这个也可以在CMakeLists.txt中指定

A库是c语言库,所以设置CMAKE_C_FLAGS

set(CMAKE_OSX_SYSROOT /Users/project/MacOSX11.3.sdk)

//该项不需要添加,CMAKE_OSX_SYSROOT定义后就会自动会转化为-isysroot /Users/project/MacOSX11.3.sdk

set(CMAKE_C_FLAGS "{CMAKE_CXX_FLAGS} --sysroot {CMAKE_OSX_SYSROOT} ")

相关推荐
denggun123454 小时前
卡顿监测原理
macos·ios·xcode
Sheffi667 小时前
iOS 触摸事件完整传递链路:Hit-Test 全流程深度解析
macos·ios·cocoa
ChineHe9 小时前
Gin框架入门篇002_第一个Gin服务
macos·xcode·gin
Roc.Chang9 小时前
解决 macOS 26.1 The application “xxxx” can’t be opened. 问题
macos
赶路人儿10 小时前
从intel mac迁移到M3后软件的兼容性
macos
颜淡慕潇10 小时前
Podman 从0到1使用教程(macOS 系统):安装 MySQL、Redis 容器
mysql·macos·podman
Niap.pr10 小时前
Macos下访问树莓派系统(ext4)
macos
芳草萋萋鹦鹉洲哦10 小时前
【mac】解决Apple无法验证“fsevents.node”是否包含可能危害Mac安全或泄漏隐私的恶意软件
安全·macos
aini_lovee1 天前
寻找 MAC 协议的 MATLAB 仿真
开发语言·macos·matlab
2501_915106321 天前
最新版本iOS系统设备管理功能全面指南
android·macos·ios·小程序·uni-app·cocoa·iphone