2014-10-18 4 views
45

मैं पूछना चाहता हूं और फिर इस प्रश्न का उत्तर देना चाहता हूं।लक्ष्य FRAMEWORK_SEARCH_PATHS बिल्ड सेटिंग्स को ओवरराइड करता है

मैं अपने ऐप में बनाए गए कोकोपोड्स को अपडेट करना चाहता हूं, इसलिए मैंने टर्मिनल से pod install चलाया।

है यही कारण है कि जब मैं इस त्रुटि मिली:

[!] The `APP_NAME [Debug]` target overrides the `FRAMEWORK_SEARCH_PATHS` build setting defined in `Pods/Target Support Files/Pods/Pods.debug.xcconfig'. This can lead to problems with the CocoaPods installation 
- Use the `$(inherited)` flag, or 
- Remove the build settings from the target. 

आप कैसे $ (विरासत में मिला है) ध्वज का उपयोग करते हैं?

उत्तर

86

चयनित परियोजना, targets-> ऐप्लिकेशन खोलें, फिर Build Settings जहाँ मैं $ जोड़ा (विरासत में मिला है) लाइन, हटाने जो कुछ विशिष्ट फली से पहले वहाँ संदर्भित किया गया था:

enter image description here

मुझे आशा है कि यह किसी को मदद करता है ।

+1

Thx। मुझे निर्दिष्ट पॉड को हटाना पड़ा था और इसे आपके द्वारा उल्लिखित $ (विरासत) के साथ प्रतिस्थापित करना था। – palme

+1

मेरे मामले में, मुझे बहुत $ (PROJECT_DIR) – kakashy

+0

जोड़ने की आवश्यकता है यह उत्तर एक लंबी, लंबी खोज का अंत था। उत्तर और टिप्पणियां पोस्ट करने के लिए धन्यवाद। – AndrewHenderson

10

मुझे इस मुद्दे का भी सामना करना पड़ रहा था।

पीटर ने ऊपर वर्णित करने के अलावा, को याद रखें कि सही पॉडफ़ाइल में सही एक्सकोड प्रोजेक्ट का चयन किया गया है या नहीं। ऐसा इसलिए है क्योंकि यह संभव है कि आप गलत एक्सकोड प्रोजेक्ट की बिल्ड सेटिंग्स बदल रहे हों। यह एक मूर्खतापूर्ण गलती थी, लेकिन मुझे एहसास होने में काफी समय लगा।

आम तौर पर, pod install निर्देशिका में केवल .xcodeproj फ़ाइल होने पर स्वचालित रूप से कार्य करता है। हालांकि, अगर आप अपने प्रोजेक्ट में फ्रेमवर्क/तृतीय पक्ष परियोजनाओं को मैन्युअल रूप से जोड़ने के पुराने तरीके से कोकोपोड का उपयोग शुरू करने के लिए अपनी प्रोजेक्ट माइग्रेट कर रहे हैं, तो यह संभव है कि आपके फ़ोल्डर में एकाधिक .xcodeproj फ़ाइलें हों। उपर्युक्त फिक्स करने से यह मेरे लिए हल नहीं हुआ, क्योंकि मैं गलत .xcodeproj फ़ाइल संपादित कर रहा था।

अपनी परियोजना निर्देशिका के लिए

जाओ, Podfile नाम की फ़ाइल की जाँच करें और सुनिश्चित करें कि आप xcodeproj निर्दिष्ट करें:

# Uncomment this line to define a global platform for your project 
# platform :ios, '8.0' 
# Uncomment this line if you're using Swift 

use_frameworks! 
xcodeproj 'APP_NAME.xcodeproj' 
target 'APP_NAME' do 

# Your dependencies here 
# pod 'NAME_OF_DEPENDENCY' 
pod 'Google/CloudMessaging' 
pod 'RxSwift', '~> 2.0' 
pod 'RxCocoa', '~> 2.0' 
pod 'RxBlocking', '~> 2.0' 
pod 'Fabric' 
pod 'Crashlytics' 
pod 'FBSDKCoreKit' 
pod 'FBSDKLoginKit' 
pod 'FBSDKShareKit' 

अपने Podfile पर सही .xcodeproj चुनने के बाद, Xcode के पास जाकर निम्न कार्य करें:

  1. बाईं तरफ प्रोजेक्ट नेविगेटर से, अपनी परियोजना का चयन करें।
  2. केंद्र स्क्रीन पर, Build Settings
  3. करने के लिए जाने के लिए एक फिल्टर जोड़ें 'फ्रेमवर्क खोजें पथ'
  4. $(inherited) मूल्य के रूप में दर्ज करें; इसे डेटा का मूल्यांकन करना चाहिए कि अभिव्यक्ति

नीचे संस्करण 7.2 (7C68) के साथ एक्सकोड की एक छवि है।

Xcode preview

+1

बस एक ध्यान दें: CocoaPods 1.3.1 एक प्रतिवाद चेतावनी देता है: "।' 'Xcodeproj' project' को नाम दिया गया था उसके अनुसार अपनी Podfile अपडेट करें।" – AmitaiB

संबंधित मुद्दे