2015-09-25 71 views
1

背景: 我有很多動態框架是用位代碼支持構建的。由於其他一些依賴關係,我無法在我的主應用程序上支持位代碼,並且由於我正在開發iOS應用程序,所以在將它們發送到iTunes Connect進行分發時,構建會被拒絕,因爲它們包含帶有位代碼的框架。所以不管他們爲什麼要這樣做,我需要從框架中刪除位代碼,以便分發我的應用程序。將llvm位代碼庫轉換爲本地代碼庫

問: 有沒有辦法通過LLVM,鐺或任何其他工具之一位碼二進制轉換爲本地二進制文件?

回答

0

有可能是它避免了位碼將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 
+0

這需要源的重新編譯不過。在這種情況下是否可以轉換已編譯的庫,即.dylib? – carlossless

+0

我沒有使用.dylib文件,所以我不知道任何有關它的細節。我想這是不可能運行llvm-dis的嗎? – Andreas

+0

其實我是從我手機看的例子,稍微誤解了它,稍後我會試一試。 – carlossless