如何为iOS构建DLIB

时间:2016-01-04 12:32:15

标签: ios cmake dlib

我正在尝试为iOS项目构建DLIB。运行cmake会产生libdlib.a和一大堆.o个文件。

当我将库添加到Xcode项目时,我会收到警告,表示尚未为arm64构建库。

我的问题分为两部分:

  1. 如何构建适用于iOS的DLIB(我尝试了cmake **path_to_source** -DCMAKE_OSX_ARCHITECTURE="arm64",但却导致了大量错误,例如unknown type name '__uint32_t'; did you mean '__uint128_t')?
  2. 运行cmake时构建的所有.o文件的目的是什么?我是否需要将它们包含在Xcode项目中?

3 个答案:

答案 0 :(得分:19)

我终于想出了如何做到这一点:

  

要求

  • X11(在Mac上你可以打开X11应用程序,如果X11没有安装它,它会带你去下载)。
  • 的Xcode
  • cmake(你可以使用家酿)
  

步骤

  • 在终端中设置lib-xx.xx/examples您的根
  • 执行命令

    mkdir build

    cd build

    cmake -G Xcode ..

    cmake --build . --config Release

这将创建一个名为dlib_build的文件夹,您可以在其中找到编译库的Xcode项目。在该Xcode项目的构建设置中,您可以为您喜欢的任何支持Xcode的操作系统设置构建体系结构和SDK!

编辑:

您必须包含许多自定义编译器标志和第三方库才能使dlib在项目中工作。查看examples.xcproject构建设置。

答案 1 :(得分:9)

为了赞美RASS的答案,我附上了截图,展示了如何在iOS和OSX lib中更改此内容

打开项目后,

  1. 从项目导航器中选择项目文件
  2. 从底部
  3. 一直选择dlib目标
  4. 选择'构建设置'
  5. 展开' Base SDK'下拉
  6. enter image description here

    1. 选择iOS或macOS(OSX)
    2. enter image description here

      我希望这可以帮助一些人! GL

答案 2 :(得分:0)

Rob Sanders和mylogon已经展示了如何为ios构建dlib,下面是如何使用它:

  1. 将libdlib.a添加到项目中,并将路径添加到库搜索路径中
  2. 将所有源添加到包括目录(不添加到项目)中,并将路径添加到标头搜索路径。
  3. 添加加速框架,其中包含blas符号。
  4. 从构建设置中添加预处理器宏“自定义编译器标志” /“其他c标志”。这些宏确保头文件与lib匹配。

    -DDLIB_JPEG_SUPPORT
    -DDLIB_NO_GUI_SUPPORT
    -DNDEBUG
    -DDLIB_USE_BLAS
    -DDLIB_USE_LAPACK