0

我在进行此设置时遇到问题。

我的播客文件:

platform :ios

pod 'cocos2d', '2.1'
pod 'box2d', '2.3.0'

不幸的是,我们需要CC_ENABLE_BOX2D_INTEGRATION打开,因为它0默认设置为。

我尝试向 podfile 添加一个 post_install 挂钩,如下所示:

post_install do |installer_representation|
  installer_representation.project.targets.each do |target|
    if target.name == 'Pods-cocos2d'
      target.build_configurations.each do |config|
        s = config.build_settings['GCC_PREPROCESSOR_DEFINITIONS']
        if s == nil
          s = [ '$(inherited)' ]
        end
        s.push('CC_ENABLE_BOX2D_INTEGRATION=1');
        config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] = s
      end
    end
  end
end

它按预期将标志添加到 Pods-cocos2d 目标,但是我的主项目似乎在任何时候都没有继承它,$(inherited)尽管GCC_PREPROCESSOR_DEFINITIONS.

即使那样,如果我手动编辑CC_ENABLE_BOX2D_INTEGRATION打开,我会收到链接器错误,说CCPhysicsSprite找不到。

有没有人成功设置这两个库与 cocoapods 一起工作?

4

1 回答 1

1

CCPhysicsSprite 不是 Box2d 的一部分,它是 cocos2d 的扩展。也许您没有将文件包含到项目中?

于 2013-11-04T21:55:31.990 回答