我有一個項目,幾個目標。有一個與項目關聯的xcconfig文件和與目標關聯的幾個xcconfig文件。的CocoaPods'與現有Pods.xcconfig衝突
現在我想通過的CocoaPods納入第三方庫。在$ pod install
之後,CocoaPods擰緊了原來的項目,因爲它將自己的xcconfig文件Pds.xcconfig
關聯到原始項目的目標。這會完全忽略並覆蓋與項目關聯的原始xcconfig中定義的設置,並切換與目標關聯的原始xcconfig文件。因此,該項目結束了擰。
例如,的CocoaPods限定在其Pods.xcconfig
其被關聯到每個目標以下:
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
我對每個配置不同CONFIGS,例如用於調試配置文件osx.debug.xcconfig
定義
GCC_PREPROCESSOR_DEFINITIONS = DEBUG=1 DEBUG_LOG=2 __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0
什麼是解決這種衝突合理和可行的方法?
編輯:
我已經通過在GitHub上的CocoaPods問題清單搜索。似乎有大量與xcconfig文件相關的問題,其中一些問題已超過2年。他們被討論,然後關閉,但是 - 就像我想到的那樣 - 這個問題還沒有解決。
恕我直言,這是一個基本的和基本的問題:有一種使用xcconfig文件的項目。然後,想要通過CocoaPods包含第三方庫。在執行pod install
後,項目被搞砸了。
那麼,這是怎麼回事這個?
不幸的是,無法擴展或修改的構建設置是必不可少的:GCC_PREPROCESSOR_DEFINITIONS,HEADER_SEARCH_PATHS,OTHER_CFLAGS和OTHER_LDFLAGS。罪魁禍首也可能是Xcode因爲xcconfig文件不能處理這樣的聲明:'HEADER_SEARCH_PATHS = $(HEADER _SEARCH_PATHS)MyOtherIncludes'。爲了使這項工作可能會破壞當前行爲,Xcode的xcconfig文件設置如何修改底層構建設置。 – CouchDeveloper