macOS系统下ld链接器命令报错问题求助
解决macOS下ld链接器提示"Missing -platform_version option"的问题
这是因为macOS的ld链接器现在强制要求指定目标平台的版本信息,解决方法有两种:
方法1:手动给ld添加-platform_version参数
修改编译链接命令,指定macos平台的最小支持版本和当前系统版本,示例命令:
nasm -fmacho64 main.asm && ld -platform_version macos 10.15 13.0 main.o && ./a.out
10.15是程序支持的最低macOS版本,13.0是当前系统版本(可通过sw_vers -productVersion命令查看你的系统版本)- 可根据需求调整两个版本号,只要最低版本不高于当前系统版本即可
方法2:用clang代替ld进行链接
clang会自动处理平台版本参数,无需手动指定,命令更简洁:
nasm -fmacho64 main.asm && clang main.o -o main && ./main
这种方式更省心,适合大多数开发场景,clang会自动适配当前系统的链接参数。
内容的提问来源于stack exchange,提问作者user25049277
相关产品推荐
相关产品推荐

