我试图将biicode支持添加到测试库Catch中,并且在与Objective-C和Microsoft基础类(MFC)相关的外部依赖项方面遇到了一些问题。

如果运行bii deps,则会显示以下内容:

florianwolters/catch depends on:
       system:
          algorithm
          assert.h
          cmath
          cstddef
          cstdio
          cstring
          fstream
          iomanip
          iostream
          iterator
          limits
          map
          memory
          ostream
          set
          sstream
          stdbool.h
          stdexcept
          stdint.h
          stdlib.h
          streambuf
          string
          sys/time.h
          sys/types.h
          unistd.h
          vector
          windows.h
       unresolved:
          AfxWin.h
          Foundation/Foundation.h
          objc/runtime.h
          sys/sysctl.h

这三个文件sys/sysctl.hobjc/runtime.hFoundation/Foundation.h与Objective-C中的iOS开发有关。文件AfxWin.h是Microsoft的C++库Microsoft基础类(MFC)的一部分。我创建的biicode块是florianwolters/catch(有关更多信息)。

所以问题是:如何处理这种依赖关系?尽管我尚未检查许可证,但将Apple或Microsoft拥有的源代码(甚至可能是非法的)上载到 bicode 毫无意义。

是“适当”或推荐的方法来简单地忽略这些 Unresolved 问题吗?

编辑2015-01-11:

我写了一篇关于here进程的博客文章。如果我有任何错误或对改进工作流程有任何建议,请告诉我。

最佳答案

是的,目前这是正确的方法。 Biicode预定义了一些系统 header ,它们是Win和Nix平台的基本 header ,但不是全部。通常,在biicode中找不到OSX或其他特定的 header (如MFC),然后将其标记为未解析。

这根本不是问题。您自己的库也会发生同样的情况。如果您想使用系统上安装的任何库,则可以像往常一样轻松完成操作(在带有Finders的CMake中,或在导入的目标中)。 Biicode会将未包含的该库的 header 标记为未解析,这是表明该库不受biicode管理的方式。只要您的计算机中存在这些 header ,一切都将正常工作。

关于header - 在Biicode中处理 Unresolved 依赖于平台的依赖项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27886107/

10-08 23:42