ビルド ツールとして CMake を使用して C++ スタティック ライブラリをコンパイルしました。これを iOS アプリにリンクしたいと考えています。
Xcode で単純な「空の」アプリケーションを作成し、libengine.a というライブラリをそれにリンクしました。
iOS プロジェクトをコンパイルしようとしたところ、リンカから次の警告が表示されました。
ignoring file /Users/.../build/engine/libengine.a,
file was built for archive which is not the architecture being linked (i386):
/Users/.../build/engine/libengine.a
私が理解しているように、ARM プロセッサ用にライブラリをコンパイルする必要があります。問題は、方法がわからないことです。
CMake には本当に良いチュートリアルが欠けていると思います。
とにかく、私の CMake スクリプトは以下に添付されています。
どんな助けでも大歓迎です。
ありがとう、タル。
これが私のメインの CMake スクリプトです。
cmake_minimum_required(VERSION 2.8)
project(movie-night)
if (DEFINED PLATFORM)
include(toolchains/ios.cmake)
endif()
add_definitions(-Wall)
set(DEBUG)
if (DEFINED DEBUG)
add_definitions(-g)
endif()
if (DEFINED RELEASE)
add_definitions(-O3)
endif()
add_subdirectory(engine)
add_subdirectory(ui)
add_subdirectory(test)
これが私のtoolchains/ios.cmakeファイルです:
set(CMAKE_SYSTEM_NAME Darwin)
set(CMAKE_SYSTEM_PROCESSOR arm)