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} ")

相关推荐
独隅17 小时前
WebStorm macOS 安装调优与实战效果全景
ide·macos·webstorm
木子欢儿19 小时前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust
一个人旅程~2 天前
关于imac27inch因改短用户名导致混合硬盘和系统崩溃的问题分析与故障解决
经验分享·笔记·macos·新浪微博
volunteer10242 天前
从仅剩 6 GB 到狂腾 70 GB:我的 256G Mac mini 深度清理与内存排查实战
macos
todoitbo4 天前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
独隅4 天前
WebStorm macOS 安装部署与高效调优实战指南
ide·macos·webstorm
fthux5 天前
Tick Rest,一个休息提醒工具的自我修养
macos·开源·swift
FPGA小迷弟6 天前
FPGA 与千兆以太网:各类物理接口的形式、区别、使用方法与应用场景详解
tcp/ip·macos·fpga开发·udp·fpga
周小董8 天前
[1379]mac安装nvm
macos
bossjuemfc8 天前
不记得文件名时,Mac 上的搜索还能怎么做?
macos