将llvm bitcode库转换为本机代码库

时间:2015-09-25 11:05:49

标签: xcode clang llvm

背景 我有很多使用bitcode支持构建的动态框架。由于其他几个依赖项,我无法在我的主应用程序上支持bitcode,而且由于我正在处理iOS应用程序,因此当我将它们发送到iTunes Connect进行分发时,构建会被拒绝,因为它们包含带有bitcode的框架。因此,无论他们为什么这样做,我都需要从框架中删除bitcode以便分发我的应用程序。

问题: 有没有办法通过llvm,clang或任何其他工具之一将bitcode二进制文件转换为本机二进制文件?

1 个答案:

答案 0 :(得分:0)

可能有一种方法可以避免从bitcode到IR,但以下链至少起作用:

clang -O3 -emit-llvm hello.c -c -o hello.bc #Source  -> Bitcode
llvm-dis hello.bc -o hello.ll               #Bitcode -> IR
clang hello.ll -o hello                     #IR      -> Native