Git Product home page Git Product logo

ios-cmake's Introduction

ios-cmake

A toolchain file and examples using cmake for iOS development. This is a fork of a similar project found on https://code.google.com/p/ios-cmake/

Tested with Xcode 11.4.1

In order to compile the static library for the iOS simulator (fat file: i386 x86_64), change to the folder where the library sources reside, then:

mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../../../toolchain/iOS.cmake -DIOS_PLATFORM=SIMULATOR
make
make install

Once the library is compiled and installed, change to the folder where the sample application sources reside, then open Xcode project:

open hello-app.xcodeproj

Set IOS_PLATFORM to OS to build for Device (the generated library is a fat file: armv7 armv7s arm64).

ios-cmake's People

Contributors

cristeab avatar icodist avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ios-cmake's Issues

All of header files not found

I'm sure "CMAKE_IOS_DEVELOPER_ROOT" is set correctly,but all header files are not found in logs.

the build commond like this:
cmake -DCMAKE_TOOLCHAIN_FILE=../iOS.cmake -DCMAKE_IOS_DEVELOPER_ROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/ -GXcode ..

the logs like this:

  • Toolchain using default iOS SDK: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk
    -- The C compiler identification is AppleClang 9.0.0.9000039
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - failed
    -- Detecting C compile features
    -- Detecting C compile features - failed
    -- Could NOT find Git (missing: GIT_EXECUTABLE)
    -- Could NOT find Git (missing: GIT_EXECUTABLE)
    -- Performing Test check_c_compiler_flag__Wno_error_deprecated_declarations
    -- Performing Test check_c_compiler_flag__Wno_error_deprecated_declarations - Failed
    -- Performing Test check_c_compiler_flag__Qunused_arguments
    -- Performing Test check_c_compiler_flag__Qunused_arguments - Failed
    -- Looking for GNU_LIBRARY
    -- Looking for GNU_LIBRARY - not found
    -- Looking for _GNU_SOURCE
    -- Looking for _GNU_SOURCE - not found
    -- Looking for sys/types.h
    -- Looking for sys/types.h - not found
    -- Looking for sys/socket.h
    -- Looking for sys/socket.h - not found
    -- Looking for netinet/in.h
    -- Looking for netinet/in.h - not found
    ... ...

Simulator64 object file is seen as OSX library

When building with this script for simulator64, the resulting binary is seen in Xcode differently; when linking to it during a simulator build inside Xcode, the following is reported:

building for iOS simulator, but linking in object file built for OSX, for architecture x86_64

Doesn't find Threads

find_package(Threads REQUIRED) fails with:

-- Looking for pthread.h - not found
CMake Error at /Applications/CMake.app/Contents/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
 Could NOT find Threads (missing: Threads_FOUND)
Call Stack (most recent call first):
 /Applications/CMake.app/Contents/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
 /Applications/CMake.app/Contents/share/cmake-3.6/Modules/FindThreads.cmake:223 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
 dlib/CMakeLists.txt:195 (find_package)

If I generate normal Xcode macos project and change type to iOS manually, it works and compiles fine.

License file empty

Is this under the New BSD License like the original? I would like to use it, but wasn't sure about licensing.

The CMAKE_FORCE_CXX_COMPILER macro is deprecated

The CMAKE_FORCE_CXX_COMPILER macro is deprecated. Instead just set
CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
toolchain/iOS.cmake:51 (CMAKE_FORCE_CXX_COMPILER)
build.ios/CMakeFiles/3.7.1/CMakeSystem.cmake:6 (include)
CMakeLists.txt

No iOS SDK's found in default search path

CMake Error at /Users/allen/Desktop/ios-cmake/toolchain/iOS.cmake:149 (message):
No iOS SDK's found in default search path
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.