1

我正在尝试在 Mac OS 上编译 Chromium,并希望在项目中添加一个 3rd 方框架。

我已经将我的 TParty.framework 添加到 chrome_browser.gypi 中,如下所示:

...
   ['OS=="mac"', {
      'dependencies': [
        '../third_party/google_toolbox_for_mac/google_toolbox_for_mac.gyp:google_toolbox_for_mac',
        ...
      ],
      'link_settings': {
        'libraries': [
          '../third_party/TParty.framework',
          '$(SDKROOT)/System/Library/Frameworks/Accelerate.framework',
          '$(SDKROOT)/System/Library/Frameworks/AddressBook.framework',
          ...
        ],
      },
    }],
...

然后在我从这个框架导入标头的代码中的某个地方:

#import <TParty/main_header.h>

我相信这是正确的方法,但编译器给了我一个错误:

致命错误:找不到“TParty/main_header.h”文件

如何修复配置以便 TParty.framework 可供编译器使用?

如果我直接导​​入标头就不会出错,如下所示:

#import "../third_party/TParty.framework/Versions/A/Headers/main_header.h"

但是以这种方式导入似乎是一种不好的做法。

4

1 回答 1

0

尝试使用mac_framework_dirsGYP 指令设置框架的路径:

...
   ['OS=="mac"', {
      'dependencies': [
        '../third_party/google_toolbox_for_mac/google_toolbox_for_mac.gyp:google_toolbox_for_mac',
        ...
      ],
      'link_settings': {
        'libraries': [
          'TParty.framework',
          'Accelerate.framework',
          'AddressBook.framework',
          ...
        ],
        'mac_framework_dirs': [
          '../third_party',
          '$(SDKROOT)/System/Library/Frameworks', # probably the system path is used by default
        ],
      },
    }],
...
于 2015-10-09T12:27:05.140 回答