处理biicode中未解决的与平台相关的依赖关系

Flo*_*ers 7 dependencies header include biicode

我试图在测试库Catch中添加biicode支持,并且在与Objective-C和Microsoft Foundation Classes(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
Run Code Online (Sandbox Code Playgroud)

这三个文件sys/sysctl.h,objc/runtime.hFoundation/Foundation.hObjective-C中的iOS开发有关.该文件AfxWin.hMicrosoft的C++库Microsoft Foundation Classes(MFC)的一部分.我创建的biicode块是florianwolters/catch(有关详细信息).

所以问题是:如何处理这种依赖?虽然我尚未检查许可证,但将Apple或Microsoft拥有的源代码(甚至可能是非法的)上传bicode是没有意义的.

简单地忽略这些未解决的问题是"适当的"或推荐的方式吗?

编辑2015-01-11:

我已经写了一篇博客文章的过程在这里.如果我有任何错误或者您有任何改进工作流程的建议,请告诉我.

dro*_*dri 5

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

这根本不是问题.您自己的库也会发生同样的情况.如果您想使用任何系统安装的库,您可以像往常一样轻松完成(在CMake with Finders或Imported targets中).Biicode会将该库的包含标题标记为未解析,这表示它不是由biicode管理的.只要这些标题存在于您的计算机中,一切都会正常工作.

  • 谢谢您的回复.我得出了同样的结论,我想到了如何包括"Boost". (2认同)