我正在尝试在Xcode(试过9和10)中构建一个动态加载的库/包(试过两者),特别是从这个存储库:https://github.com/kurasu/surge - 它是一个VST2音频插件,由数字音频工作站使用(例如Ableton Live,Bitwig Studio ,Cubase等) .

我能够构建 i386x86_64 架构 . 但是,当我尝试加载插件时,主机(Bitwig,在这种情况下 - 其他人无声地失败)报告:

Error loading
/Library/Audio/Plug-Ins/VST/Surge.vst/Contents/MacOS/SURGE: 
dlopen(/Library/Audio/Plug-Ins/VST/Surge.vst/Contents/MacOS/Surge, 262): no suitable image found.  Did find:
    /Library/Audio/Plug-Ins/VST/Surge.vst/Contents/MacOS/Surge: mach-o, but wrong architecture

但是,该库实际上是 is 正确的架构,从我可以告诉(主机支持 x86_64 ):

$ lipo -info /Library/Audio/Plug-Ins/VST/Surge.vst/Contents/MacOS/Surge
Non-fat file: /Library/Audio/Plug-Ins/VST/Surge.vst/Contents/MacOS/Surge is architecture: x86_64

我还构建了一个具有相同结果的 i386 版本 .

还有一些注意事项:这个库在某些地方有汇编代码,原始的VST2构建会创建一个带有脚本的 dylib 来封装它 . 我也修改了它来创建一个 bundle ,但最终导致了同样的错误 . 它也散布着Windows / Mac / Linux的各种条件 .

我也能够构建一个单独的插件,我一直在自己工作,没有任何问题,它似乎发生在这个特定的代码库和构建脚本/选项 .

在架构实际上是正确的情况下,这条消息的原因是什么?我该怎么做才能解决它?

非常感谢!