2017-12-19 16 views
0

iOS 9以前のバージョンでビルドされたライブラリの古い32ビット版を置き換えるために、iOS 11用のGhostscript(バージョン9-22)をコンパイルしようとしています。ここで見つけるの指示に従って:iOS 11のGhostscriptをコンパイルする

lipo -info libgs_arm64_release.a 

それがいることを私に語った:私がしなければ、しかし

ar -crs libgs_arm64_release.a obj/*.o 

http://www.labs.saachitech.com/2014/03/16/ghostscript-ios-static-library、私は私にarm64動的ライブラリを与えるための最後のステップを変更しました私は間違ったツールを使用していた

input file libgs_arm64_release.a is not a fat file 
Non-fat file: libgs_arm64_release.a is architecture: x86_64 

思考は、私はまたあたりXCodeのツールチェーンからのリポを使用して見てみました:How to check if a static library is built for 64-bit?が、それはXであると考えているのと同じ結果を得ました86_64。

arm64アーキテクチャーでコンパイルするにはどのようなステップがありますか?

答えて

0

私は私にarm64ダイナミックライブラリ与えるための最終段階に変更:

ar -crs libgs_arm64_release.a obj/*.o 

arがコンパイルされたオブジェクト・ファイルからライブラリを構築するだけでアーカイブツールです。 ARMライブラリが必要な場合は、コンパイルのステップを-arch armv7のようないくつかのスイッチで指定する必要があります。

正しいMakefileを使用していますか?プロジェクトには、Simulator(x86)と実際のデバイス(ARM)用のプロジェクトがあるようです。

+0

はい、後で、複数のアーキテクチャを組み合わせてfatバイナリを作成します。今、私はちょうど正しい* .aファイルを作成しようとしています。 ./configure CC = "gcc -arch arm64" --disable-cups --disable-sse2 –

+0

私はここにある指示を見ています:https:///www.ghostscript.com/doc/9.22/Make.htm#Mac_build(Mac OSX用Ghostscriptのビルド)。 –

+0

ここにちょうど警告。私が知る限り、Apple Storeのポリシーは、AGPLであるAppを作成することを不可能にしています。明らかにこれが個人的なプロジェクトであれば、それは問題ではありません。しかし、あなたはApp StoreのアプリでGPL Ghostscriptを使うことはできません。 – KenS

関連する問題