20

我正在尝试为 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. .o运行 cmake 时生成的所有文件的目的是什么?我需要将它们包含在 Xcode 项目中吗?
4

3 回答 3

20

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

要求

  • 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!

编辑:

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

于 2016-01-28T10:33:44.913 回答
10

为了恭维 RASS 的回答,我附上了屏幕截图,展示了如何在 iOS 和 OSX 库之间进行更改

打开项目后,

  1. 从项目导航器中选择项目文件
  2. 一直选择 dlib 目标
  3. 选择“构建设置”
  4. 展开“基础 SDK”下拉菜单

在此处输入图像描述

  1. 选择 iOS 或 macOS (OSX)

在此处输入图像描述

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

于 2016-12-30T13:07:57.953 回答
0

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

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

    -DDLIB_JPEG_SUPPORT
    -DDLIB_NO_GUI_SUPPORT
    -DNDEBUG
    -DDLIB_USE_BLAS
    -DDLIB_USE_LAPACK
    
于 2018-11-13T08:46:07.663 回答