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

それでも、 to を手動で編集すると、それが見つからないCC_ENABLE_BOX2D_INTEGRATIONというリンカ エラーが発生します。CCPhysicsSprite

これら 2 つのライブラリを cocoapod と連携するようにセットアップした人はいますか?

4

1 に答える 1

1

CCPhysicsSprite は Box2d の一部ではなく、cocos2d の拡張です。ファイルをプロジェクトに含めていない可能性がありますか?

于 2013-11-04T21:55:31.990 に答える