mac编译vst3sdk

不是永久全局生效,是"对该构建目录一次生效"。同一 -B /Users/jack/vst3sdk/build-release 下配置会被缓存;以后只需构建即可。

复制代码
/usr/local/bin/cmake -S /Users/jack/vst3sdk -B /Users/jack/vst3sdk/build \
  -DCMAKE_BUILD_TYPE=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
  -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
cmake --build /Users/jack/vst3sdk/build -- -j"$(sysctl -n hw.logicalcpu)"

  /usr/local/bin/cmake -S /Users/jack/vst3sdk -B /Users/jack/vst3sdk/build-release \
  -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
  -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"

cmake --build /Users/jack/vst3sdk/build-release -- -j"$(sysctl -n hw.logicalcpu)"

 lipo -info /path/to/your/library.dylib 查看文件架构

LTO优化:

复制代码
/usr/local/bin/cmake -S /Users/jack/vst3sdk -B /Users/jack/vst3sdk/build-release \
  -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
  -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" \
  -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON

要点

作用: 把各个源文件的优化延伸到链接阶段,跨文件做内联、常量折叠、去死代码,通常带来更快、更小的可执行/库。

收益: 运行时性能↑(常见为几%到十几%,视项目而定)、体积↓。

代价: 链接时间更长、内存占用更高;增量构建变慢。与某些预构建第三方库混用时优化空间有限。

通用二进制影响: 无运行时损失;只是每个架构都各自做一遍 LTO,构建更慢。

强制 ThinLTO(Apple Clang 常用,链接更快,收益接近 Full LTO):

"

Xcode 生成器也可用(CMake 打开 IPO 后会同步 Xcode 的 LTO 设置)。

相关推荐
GISer_Jing4 小时前
作业帮前端面试(准备)
前端·面试·职场和发展
hn小菜鸡7 小时前
LeetCode 1089.复写零
算法·leetcode·职场和发展
开开心心loky10 小时前
[iOS] OC高级编程 - 引用计数 (1)
macos·ios·objective-c·cocoa
Xeon-Shao10 小时前
Mac版猫眼浏览器无法启动问题解决
macos·猫眼浏览器
伐尘10 小时前
【Mac】Mac终端利器:Homebrew + iTerm2 + Oh My Zsh 教程
macos
咸鱼爱学习13 小时前
【题解】 [蓝桥杯 2019 省 B] 特别数的和
算法·职场和发展·蓝桥杯·模拟·枚举
Winter_Sun灬14 小时前
老的ios项目在新的mac M1上编译运行遇到的问题及整理
macos·ios
笙歌已沫15 小时前
蓝桥杯2024年第15届B组试题D
算法·职场和发展·蓝桥杯