2017-11-07 18 views
0

iOSプロジェクト用の外部C++ライブラリが含まれていました。このライブラリはコンパイルされ、私のプロジェクトとこれからリンクされました:http://github.com/chili-epfl/chilitags/iOS:実デバイスでプロジェクトを実行しているときにエラーが発生しました

私はシミュレータでプロジェクトを実行するとコンパイルされます。しかし、iPhone7のような実機でプロジェクトを実行すると失敗します。

エラーが明らかになった:

warning: ignoring file /usr/local/lib/libchilitags.dylib, file was built for x86_64 which is not the architecture being linked (arm64): /usr/local/lib/libchilitags.dylib 

のlibファイルが無視されたので、私はすべてを使用する機能は、致命的なリンクエラーが発生しました。

理由は明らかでしたが、私は何をすべきか分かりません。 iPhone7はarm64アーキテクチャーでしたが、ファイルはx86_64アーキテクチャーでしたので、実際のデバイスで実行する必要があります。

したがって、arm64の実デバイスでx86_64ライブラリを実行できるようにするにはどうすればよいですか?前もって感謝します。

答えて

0

BSo、arm64の実デバイスでx86_64ライブラリを実行できるようにするにはどうすればよいですか?

x86arm64で使用されているプロセッサの命令セットに問題があります。

したがって、arm64のライブラリをコンパイルするか、ターゲットアーキテクチャ用にコンパイル済みであることが必要です。

+0

はい、実際問題です。しかし、私はどのように外部ライブラリ全体をarm64アーキテクチャにコンパイルするのか分かりません。それはCMakeのクロスコンパイルと関係がありますか? –

関連する問題