在clang中,你如何链接Mach-O捆绑?

时间:2014-01-30 16:07:08

标签: linker clang instruments

  

clang --version

     

Apple LLVM 5.0版(clang-500.2.79)(基于LLVM 3.3svn)   目标:x86_64-apple-darwin13.0.0   线程模型:posix

我正在寻找编译一个文件,将其与

下的“插件”相关联
  

/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns /

正在运行

  

file /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/MemoryPlugin.bundle/Contents/MacOS/MemoryPlugin

返回

  

/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/MemoryPlugin.bundle/Contents/MacOS/MemoryPlugin: Mach-O 64位软件包x86_64

有没有办法以与Frameworks(.framework)和库文件(.a)类似的方式链接到它?

1 个答案:

答案 0 :(得分:2)

据我所见,无法链接到捆绑包,您需要“加载”它,有效地使其所有符号可用。

  

[[NSBundle bundleWithPath:@“/ Applications / Xcode.app / Contents / Applications / Instruments.app / Contents / PlugIns / MemoryPlugin.bundle”] load];

<强>更新

OS X ABI Mach-O File Format Reference

  

MH_BUNDLE文件类型是您在运行时加载的代码通常使用的类型(通常称为bundle或plug-ins)。按照惯例,此格式的文件扩展名为.bundle。