वास्तुकला arm64 के लिए अपरिभाषित प्रतीक


200

मैं एक Apple मच-ओ लिंकर त्रुटि प्राप्त कर रहा हूं हर बार जब मैं कोकोआपोड्स से एक फ़ाइल आयात करता हूं।

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_FBSession", referenced from: someFile
ld: symbol(s) not found for architecture arm64

मैं इनमें से 12 के बारे में प्राप्त करता हूं, विभिन्न पॉड्स का उपयोग करता हूं।

मैं XCode 5 का उपयोग करके iPhone 5S के लिए निर्माण करने की कोशिश कर रहा हूं।

मैं एसओ पर यहां विभिन्न समाधानों की कोशिश कर रहा हूं, लेकिन उनमें से किसी को भी अभी तक काम नहीं मिला है।

मैं इस Apple Mach-O लिंकर त्रुटि को कैसे ठीक करूं?


बस एक और चेतावनी मिली जो दिलचस्प हो सकती है, मुझे आशा है कि यह मुझे समाधान की ओर ले जाएगा:

Ignoring file ~/Library/Developer/Xcode/DerivedData/SomeApp/Build/Products/Debug-iphoneos/libPods.a, 

file was built for archive which is not the architecture being linked (arm64):~/Library/Developer/Xcode/DerivedData/someApp/Build/Products/Debug-iphoneos/libPods.a


सरल समाधान लक्ष्य पर जाएं -> लिंकिंग -> अन्य लिंकर फ़्लैग और डिबग और रिलीज़ दोनों में अन्य लिंकर फ़्लैग में $ (विरासत में मिला हुआ) जोड़ें।
मिहिर ओझा

जवाबों:


248

यदि आपके आर्किटेक्चर और वैलिड आर्किटेक्चर सभी सही हैं, तो आप जाँच सकते हैं कि क्या आपने जोड़ा है $(inherited), जो पॉड्स में उत्पन्न लिंकर झंडे को जोड़ देगा, अन्य लिंकर फ्लैग के लिए नीचे दिए अनुसार: यहां छवि विवरण दर्ज करें


7
@chancyWu क्या आप समझा सकते हैं?
पॉल ब्रूज़ेन्स्की

5
अगर यह अभी भी काम नहीं करता है, तो लाइब्रेरी सर्च पाथ्स में @ (विरासत में मिला हुआ) भी जोड़ें।
एनरिको सुसात्यो

1
लोल, Use the $(inherited) flagटर्मिनल चेतावनी को अनदेखा कर दिया । और त्रुटि मुझे यहाँ ले आई। मेरा दिन बचाया।
सुशील शर्मा

2
मैं Xcode 7.2 के साथ और अन्य लिंकर फ्लैग्स में काम कर रहा हूं -> डीबग मैं देख रहा हूं: -weak_framework CoreFoundation -weak_framework UIKit -weak_framework AVFoundation -weak_wramework CoreMedia -weak-lSystem -ObjC ... यहां मैंने $ (विरासत में मिला है) टी वर्क
एलेसेंड्रा

आपने मेरा बहुत समय बचाया। धन्यवाद।
निर्मलसिंह

123

मुद्दा यह है कि कोकोपोड्स को आर्म 64 आर्किटेक्चर के लिए नहीं बनाया गया है, इस प्रकार जब आप उन्हें बनाते हैं तो उन्हें लिंक नहीं किया जा सकता है। संभवतः आप उन पैकेजों का उपयोग नहीं कर सकते जब तक कि वे अपडेट न हों और उस आर्किटेक्चर का उपयोग न करें। आप प्रोजेक्ट पर जाकर लिंकर की त्रुटि को ठीक कर सकते हैं -> लक्ष्य (आपकी परियोजना का नाम) -> सेटिंग्स बनाएँ और आर्किटेक्चर को मानक आर्किटेक्चर (armv7, armv7s) में बदलें, और armv7, armv7s को मान्य आर्किटेक्चर।

ध्यान दें, इसका मतलब है कि आपको 64 बिट प्रोसेसर की पूरी शक्ति नहीं मिलेगी। आपने कहा कि आप 5s के लिए निर्माण कर रहे हैं, इसलिए कुछ कारण हो सकते हैं जिनकी आपको आवश्यकता है। यदि आपको किसी कारण से उस शक्ति की आवश्यकता है (शायद आप एक गेम बना रहे हैं), और सख्त रूप से उन फ़ाइलों की आवश्यकता है, तो आप एक पुल अनुरोध सबमिट कर सकते हैं और फिर उन्हीं फ़ील्ड्स को arm64 में उन फ़ाइलों को arm64 में सेट करके जो आपने खींचीं थीं ओपन सोर्स प्रोजेक्ट्स। लेकिन, जब तक आपको वास्तव में इन फ़ाइलों को 64 बिट संगत करने की आवश्यकता नहीं होती है, तब तक यह थोड़ी अधिक ओवरकिल की तरह लगता है।

EDIT: कुछ लोगों ने यह भी बताया कि इस समस्या को हल करने के लिए बिल्ड आर्किटेक्चर फॉर एक्टिव आर्किटेक्चर टू YES भी आवश्यक था।

2014-04-28 तक सेटिंग कुछ इस तरह दिखनी चाहिए:

यहां छवि विवरण दर्ज करें


4
इसने सिम्युलेटर पर चलने के लिए त्रुटि को हल किया, हालांकि, इसने डिवाइस पर चलने के लिए त्रुटि को हल नहीं किया। पॉड्स को libPods.a के लिए अस्वीकार कर दिया गया था क्योंकि इसका आर्किटेक्चर '' (किसी कारण से, यह इसका पता नहीं लगा रहा है - हालांकि मैं इसे Xcode में देख सकता हूं) में सभी आवश्यक आर्किटेक्चर 'armv7 armv7s' नहीं थे
GangstaGrham

7
ठीक है, मुझे बिल्ड फॉर एक्टिव आर्किटेक्चर टू यस की स्थापना करके यह मिला है। आपको बहुत - बहुत धन्यवाद!
गंगस्थग्राम

2
एक तरफ: आप fileटर्मिनल में कमांड का उपयोग यह बताने के लिए कर सकते हैं कि स्टैटिक लाइब्रेरी किस आर्किटेक्चर का समर्थन करती है।
फंक

8
कोरस में जोड़ने के लिए बस यहां आया था: गतिविधि के लिए भवन के लिए हाँ का चयन करना यहां सबसे अच्छा विकल्प है।
वेल्स

56
यह अब कोई हल नहीं है। Apple अब सभी तैनाती के लिए 64 बिट के लिए समर्थन की मांग करता है।

52

मैंने इस समस्या को हल कर दिया है:

ARCHS = armv7 armv7s

VALID_ARCHS = armv6 armv7 armv7s arm64


1
मुझे पहली बार XCode 5.1 का उपयोग करते समय एक समान समस्या थी, इसने इसे ठीक कर दिया। धन्यवाद!
गैंग्सट्रामहम

@morisunshine क्या आप सुनिश्चित हैं, क्या आपने द्विआधारी आर्किटेक्चर की जांच की है?
onmyway133

@ onmyway133 मैंने जाँच की है, लेकिन अब मैं इस समस्या को नए XCode में पूरा नहीं कर रहा हूँ।
नैतिकता

@morisunshine हाँ, मेरा मतलब है कि आप
बाजूबंद

कोई और अधिक बिल्ड एरर नहीं है, इस बिंदु तक यह ठीक है। लेकिन संग्रहीत निर्माण को अपलोड करते समय, मुझे arm64 बिट लापता त्रुटि मिल रही है क्योंकि arm64 बिट समर्थन फरवरी 1, 2015 से एक मजबूरी है
zeeawan

45

मैं एक ही / समान मुद्दे को लागू करने में भाग गया AVPictureInPictureControllerऔर मुद्दा यह था कि मैं अपने प्रोजेक्ट में AVKit ढांचे को लिंक नहीं कर रहा था ।

त्रुटि संदेश था:

Undefined symbols for architecture armv7:
   "_OBJC_CLASS_$_AVPictureInPictureController", referenced from:
       objc-class-ref in yourTarget.a(yourObject.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

समाधान:

  1. अपने प्रोजेक्ट पर जाएं
  2. अपना लक्ष्य चुनें
  3. फिर, बिल्ड चरणों में जाएं
  4. पुस्तकालयों के साथ लिंक बाइनरी खोलें
  5. अंत में, बस जोड़ने + AVKit ढांचे / किसी अन्य ढांचे

उम्मीद है कि यह किसी और को इसी तरह के मुद्दे पर चलने में मदद करता है जो मेरे पास था।


6
हाँ, यह उल्लेख के लायक है कि यह एक त्रुटि है जिसे फेंक दिया जाता है यदि आप एक रूपरेखा याद कर रहे हैं। एक सुराग है कि आप वास्तुदोषों को दूर करने का प्रयास कर रहे हैं और अगला / शेष भी विफल रहता है ...
क्रिस्टन वेट

1
बहुत बढ़िया। `" _OBJC_CLASS _ $ _ XXXXXClass ", से संदर्भित:` ,,, xxx फ्रेमवर्क जोड़ें।
IHTCboy

सटीक! जो भी ml xml ’प्रिंट वाली कोई भी चीज देखता है वह इस बात की जांच करता है - मेरे मामले में यह ml libxml’ ढांचा जुड़ा नहीं था।
इव्यूस

फली की शुरूआत को संशोधित करने के बाद, यह त्रुटि हुई, और सभी विधियां तय नहीं की गईं। लेकिन आपकी विधि समस्या को ठीक करती है। नोट: lib को खोजा नहीं जा सकता है।
स्टेलर

33

मुझे भी इसी समस्या का सामना करना पड़ा, उपरोक्त तरीके काम नहीं करेंगे। मैंने गलती से उस पर निम्नलिखित निर्देशिका में फ़ाइलों को हटा दिया।

फ़ोल्डर का विस्थापन:

~ / Library / डेवलपर / Xcode / DerivedData /

यहां छवि विवरण दर्ज करें


3
जैसा कि यह अजीब लग रहा है यह वास्तव में काम कर सकता है। धन्यवाद दोस्त।
फेलिप

2
व्युत्पन्न डेटा को मैन्युअल रूप से हटाने के लिए, मेरे लिए भी चाल चली। चीयर्स!
L_Sonic

7
धन्यवाद! मैं एक संकेत जोड़ना चाहूंगा: फ़ोल्डर के तहत है / उपयोगकर्ता / yourname / पुस्तकालय / डेवलपर / XCode / DerivedData
स्टीफन ब्योरा

आपको टर्मिनल का उपयोग करके व्युत्पन्न डेटा को हटाने में भी सक्षम होना चाहिए: rm -rf ~ / Library / Developer / Xcode / DerivedData
simon_smiley

मेरा समय बचाया ... XDDD
Hsiao-Ting

25

सेट आर्किटेक्चर के लिए ARMv7 armv7s , सक्रिय वास्तुकला केवल बिल्ड करने के लिए नहीं , इस परियोजना में हर लक्ष्य के लिए, सहित हर एक में फलियाँ


काम किया सॉर्ट ... अब मुझे "अवैध बिटकॉइन हस्ताक्षर" त्रुटि मिल रही है।
जेरेमीएफ

18

मैंने दाईं ओर लक्ष्य सदस्यता में चयनित कार्यान्वयन फ़ाइलों की जांच करके मेरा निर्धारित किया। यह विशेष रूप से एक्सटेंशन यानी कस्टम कीबोर्ड से निपटने में उपयोगी है।

लक्ष्य सदस्यता


Xcode 9 इसे स्वचालित रूप से लागू नहीं करता है, भले ही चेकबॉक्स चेक किया हो। धन्यवाद।
अमीरो शफी

यही समस्या थी। थैंक्यू
इग्नासियो हर्नांडेज़

11

यहाँ कुछ स्पष्टीकरण क्यों हैं build_active_architecture लिए निर्धारित है। Xcode अब पता लगाता है कि आपने किन उपकरणों को कनेक्ट किया है और उसी के अनुसार सक्रिय आर्किटेक्चर सेट करेंगे। इसलिए यदि आप अपने कंप्यूटर में एक दूसरी पीढ़ी के iPod टच को प्लग करते हैं, तो Xcode को सक्रिय आर्किटेक्चर को armv6 पर सेट करना चाहिए। उपरोक्त डिबग कॉन्फ़िगरेशन के साथ अपना लक्ष्य बनाना अब समय बचाने के लिए केवल armv6 बाइनरी का निर्माण करेगा (जब तक कि आपके पास एक बड़ी परियोजना नहीं है आप अंतर को नोटिस नहीं कर सकते हैं, लेकिन मुझे लगता है कि समय के साथ सेकंड जोड़ते हैं)।

जब आप ऐप स्टोर में प्रकाशन के लिए एक वितरण कॉन्फ़िगरेशन बनाते हैं, तो आपको यह सुनिश्चित करना चाहिए कि यह विकल्प सेट नहीं है, ताकि Xcode इसके बजाय वसा सार्वभौमिक बाइनरी http://useyourloaf.com/blog/2010/04/21/xcode का निर्माण करेगा बनाएँ सक्रिय-वास्तुकला-only.html


यह अविश्वसनीय रूप से FUBARed है! XCode का आउटपुट इस बात पर निर्भर करता है कि आपने किस डिवाइस को बिल्ड मशीन से जोड़ा है!
मैट


5

आपको बस वैध आर्किटेक्चर से arm64 को हटाने और केवल सक्रिय आर्किटेक्चर के लिए NO सेट करने की आवश्यकता है । अब बस क्लीन, बिल्ड एंड रन। आपको यह त्रुटि दोबारा नहीं दिखाई देगी।

:) के.पी.


4

इस से संबंधित हो सकती libz.dylibया libz.tbd, बस जोड़ने binaries के लिए अपने लक्ष्यों को में जोड़ने, और फिर से संकलन करने की कोशिश करने के लिए है।


Tesseract ढांचे को जोड़ने की कोशिश कर रहा था, और केवल इसने मेरी मदद की, धन्यवाद। !
हैलोमीडरियस

3

मैंने इसे armv7 armv7 के लिए मान्य आर्क सेट करके और रिलीज़ में केवल YES में सक्रिय आर्किटेक्चर बनाने के लिए हल किया और फिर कमांड लाइन से एक नया "पॉड इंस्टॉल" कर रहा था


3

एक iPhone 5s को देखते हुए और अभी तक किसी तीसरे पक्ष के पुस्तकालय का 64 बिट संस्करण प्राप्त नहीं हुआ है, मुझे नवीनतम Xcode के साथ 32 बिट मोड पर वापस जाना पड़ा (5.1 से पहले इसकी शिकायत नहीं थी)।

मैंने इसे मान्य आर्किटेक्चर सूची से arm64 को हटाकर और फिर केवल सक्रिय वास्तुकला का निर्माण करने के लिए तय किया। ऐसा लगता है कि यह अन्य तरीकों से अधिक समझ में आता है जैसा कि ऊपर दिखाया गया है। मैं अन्य लोगों को उनके लिए काम करने के लिए उपरोक्त समाधानों में से कोई भी नहीं मिल पाने की स्थिति में पोस्ट कर रहा हूं।


3

मुझे Xcode 5.1 में अपग्रेड करने के बाद भी यही समस्या थी और आर्किटेक्चर को armv7 armv7s में सेट करके इसे ठीक किया


3

पूरे दिन इस मुद्दे पर डटी रही।

मेरे पास कई योजनाएं थीं, यह डेमो, आंतरिक, रिलीज के लिए ठीक संकलन था - हालांकि डिबग योजना सिर्फ संकलन नहीं करेगी और libPods.a लापता होने के बारे में शिकायत कर रही थी।

इसका समाधान परियोजना में जाना था -> लक्ष्य -> ​​सेटिंग बनाएँ और YES में "बिल्ड एक्टिव आर्किटेक्चर ओनली" बदलें। साफ और निर्माण! अंत में सिर की खुजली के घंटे हल हो गए!


आपके जैसा ही नहीं बल्कि ठीक उसी तरह का मुद्दा। मैंने इसे आपके द्वारा प्रदान की गई विधि के साथ हल किया।
हेलज़ेट

2

लक्ष्य की बिल्ड सेटिंग में सेटिंग -ObjCकरने Other Linker Flagsसे समस्या हल हो गई।


2

यह मेरे लिए काम किया:

ios sdk 9.3

app.xcodeproj के अपने निर्माण सेटिंग में वैध वास्तुकला के : armv7 armv7s सक्रिय वास्तुकला बनाएँ: नहीं

स्वच्छ और निर्माण, मेरे लिए काम किया।


1

के लिए मुझे मिल GPUImage दोनों 64-बिट सिम्युलेटर और रेटिना iPad मिनी के लिए Xcode 5.1 पर त्रुटियों के बिना संकलन करने के लिए काम के बाद, बिना मान्य आर्किटेक्चर सूची से arm64 को हटाने की आवश्यकता के (जो परीक्षण के लिए 64-बिट डिवाइस के मालिक के उद्देश्य को पराजित करता है। 64-बिट प्रदर्शन)।

GitHub पृष्ठ से .zip फ़ोल्डर डाउनलोड करें: https://github.com/BradLarson/GPUImage

खोलना, और 'फ्रेमवर्क' फ़ोल्डर में नेविगेट करें। यहां से, अपने Xcode प्रोजेक्ट में 'सोर्स' फोल्डर को जोड़ें और कॉपी करें। सुनिश्चित करें कि 'डेस्टिनेशन ग्रुप्स इन डेस्टिनेशन ग्रुप्स फोल्डर' को कॉपी किया जाए और 'किसी भी फोल्ड किए गए फोल्डर के लिए ग्रुप्स' भी बनाया जाए। यह आपके प्रोजेक्ट में जेनेरिक, iOS और मैक हेडर / इंप्लीमेंटिंग फाइल्स को कॉपी करेगा।

यदि आपको मैक फ़ाइलों की आवश्यकता नहीं है क्योंकि आप iOS के लिए संकलन कर रहे हैं तो आप मैक फ़ोल्डर को हटा सकते हैं इससे पहले कि आप अपनी परियोजना में फ़ाइलों की प्रतिलिपि बनाएँ, या बस समूह को Xcode के भीतर से हटा दें।

एक बार जब आप स्रोत फ़ोल्डर को अपनी परियोजना में जोड़ लेते हैं, तो बस GPUImage की कक्षाओं / विधियों का उपयोग शुरू करने के लिए निम्नलिखित का उपयोग करें:

#import "Source/GPUImage.h" 

कुछ बातें इंगित करने के लिए:

  • अगर आपको 'कोको' नहीं मिला, तो आपको एक त्रुटि मिलती है, आपने मैक फ़ोल्डर / हेडर को अपने iOS प्रोजेक्ट में जोड़ दिया है - बस अपने प्रोजेक्ट से मैक समूह / फाइलों को हटा दें और चेतावनी गायब हो जाएगी
  • यदि आप स्रोत फ़ोल्डर (Xcode में समूह नहीं) का नाम बदलते हैं, तो #import निर्देश में "Source / GPUImage.h" के बजाय उस नाम का उपयोग करें। इसलिए यदि आप अपने प्रोजेक्ट में जोड़ने से पहले फ़ोल्डर का नाम बदलकर GPUImageFiles करते हैं, तो उपयोग करें: #import "GPUImageFiles / GPUImage.h
  • स्पष्ट रूप से सुनिश्चित करें कि arm64 को A7 64-बिट प्रोसेसर का लाभ उठाने के लिए मान्य आर्किटेक्चर सूची में चुना गया है!
  • यह GPUImage.framework बंडल नहीं है (जैसे कि यदि आपने http://www.raywenderlich.com/60968/ios-7-blur-effects-gpuimage से फ्रेमवर्क डाउनलोड किया है ) तो यह GPUImage का उपयोग करने का सही तरीका नहीं है ब्रैड लार्सन का इरादा था, लेकिन यह मेरे वर्तमान स्प्राइटकिट प्रोजेक्ट के लिए काम करता है।
  • फ्रेमवर्क / लाइब्रेरी आदि से लिंक करने की कोई आवश्यकता नहीं है - बस हेडर और कार्यान्वयन स्रोत फ़ोल्डर को आयात करें जैसा कि ऊपर वर्णित है

आशा है कि उपरोक्त मदद करता है - ऐसा लगता है कि कई बार प्रश्न पूछे जाने के बावजूद कहीं भी कोई स्पष्ट निर्देश नहीं थे, लेकिन डर नहीं, GPUImage निश्चित रूप से arm64 वास्तुकला के लिए काम करता है!


1

यह समस्या मेरे लिए पॉडफाइल के माध्यम से पॉड स्थापित करने के बाद हुई और pod install। अलग-अलग फ़िक्सेस के झुंड की कोशिश करने के बाद, मैंने आखिरकार पॉड को मैन्युअल रूप से आयात किया (आवश्यक फाइलों को मेरी परियोजना में खींचकर) और जिससे समस्या हल हो गई।


मेरे लिए भी काम किया लेकिन एक फ़ाइल के साथ एक आसान पॉड था।
इलुवतार_जीआर

1

जैसा नैतिकता के जवाब सही दिशा में बताया गया था, उसके जवाब में थोड़ा ट्विस्ट ने iOS8.2 के लिए मेरी समस्या हल कर दी। उसके लिए धन्यवाद।

मैंने इस समस्या को हल कर दिया है:

ARCHS = armv7

VALID_ARCHS = armv6 armv7 armv7s arm64

BUILD ACTIVE ARCHITECTURE ONLY= NO

1
  1. लक्ष्य बनाएँ सेटिंग पर जाएँ।
  2. डिबग और रिलीज़, दोनों के लिए केवल एक नया निर्माण सेट करें
  3. बनाएँ और चलाएँ

3
केवल PODS परियोजना में भी
इलाद

1

मेरे मामले में, मुझे तलाश करनी थी

C++ Standard Libraryऔर सुनिश्चित करें कि libc++एक चयनित था।


1

मेरे लिए, मैं iOS के लिए xcode 7.2 में opencv 2.4.9 का उपयोग करता हूं और उपरोक्त त्रुटियां हुई हैं, और मैं ऑफ़लाइन opencv ढांचे के बजाय पॉड इंस्टॉल के माध्यम से opencv का उपयोग करके त्रुटियों को हल करता हूं।

आप नीचे दिए गए opencv पॉड पाठ को जोड़कर कोशिश कर सकते हैं और यदि आपने उपयोग किया है तो ऑफ़लाइन opencv फ्रेमवर्क को हटा सकते हैं।

पॉड 'ओपनसीवी', '2.4.9'


1

कोई भी समाधान मेरे मामले में इस त्रुटि को ठीक नहीं करता है (Xcode 9), साथ TesseractOCRiOS। घंटों परीक्षण और त्रुटि के बाद, मैं एक अच्छा समाधान लेकर आया। मैं बस को नष्ट 'pod 'TesseractOCRiOS', '~> 4.0.0'में Podfile, चलाने के pod install। और फिर, pod 'TesseractOCRiOS', '~> 4.0.0'वापस जोड़ें Podfileऔर pod installफिर से चलाएं ।

बैंग! यह काम करता हैं!


1

"OPN [डीबग] लक्ष्य OTHER_LDFLAGS निर्माण सेटिंग को ओवरराइड करता है"। यह मुख्य मुद्दा था। अन्य लिंकर झंडे में नई लाइन में $ (विरासत में) जोड़ने के बाद मेरे मुद्दे को हल किया। यहां छवि विवरण दर्ज करें


1

किसी मामले में, यदि आप .h फ़ाइल में एक और इंटरफ़ेस को परिभाषित करते हैं, लेकिन इन सभी इंटरफ़ेस को कार्यान्वित नहीं करते हैं, तो यह त्रुटि हुई।

लिंकर को .m फ़ाइल में कार्यान्वयन नहीं मिला, इसलिए आपको इसे प्रत्येक इंटरफ़ेस के लिए अपने .m फ़ाइल में लागू करने की आवश्यकता है।

इस त्रुटि को हल करने के लिए:

1. .m फ़ाइल, प्रत्येक इंटरफ़ेस के लिए कार्यान्वयन की आपूर्ति। 2.rebuild


1

मैंने उसी मुद्दे का सामना किया। मेरा समाधान मुझे यहाँ मिला: लिंकर स्थैतिक पुस्तकालयों को त्रुटियों के साथ क्यों जोड़ता है? आईओएस

लाइब्रेरी खोज पथ में $ (TOOLCHAIN_DIR) / usr / lib / स्विफ्ट / $ (PLATFORM_NAME) को जोड़ने से समस्या ठीक हो गई।


0

इस समस्या को दूर करने के लिए AWS फ्रेमवर्क को स्थापित करने के बाद मुझे उसी समस्या का सामना करना पड़ रहा है, मैंने आपके प्रोजेक्ट से POD config फाइल अपडेट की है जो AWS POD स्थापित करने के बाद बनाई गई है। नीचे के रूप में कॉन्फ़िगर फ़ाइल की जाँच करें

OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-AWSAutoScaling" -l"
Pods-   AWSCloudWatch" -l"Pods-AWSCognito" -l"Pods-AWSCore" -l
"Pods-AWSDynamoDB" -l"Pods-AWSEC2" -l"Pods-AWSElasticLoadBalancing" 
-l"Pods-AWSKinesis" -l"Pods-AWSLambda" -l"Pods-AWSMachineLearning" 
-l"Pods-AWSS3" -l"Pods-AWSSES" -l"Pods-AWSSNS" -l"
Pods-AWSSQS"-l "Pods-AWSSimpleDB" -l"Pods-Bolts" -l"Pods-FMDB" 
-l"Pods-GZIP" -l"Pods-Mantle" -l"Pods-Reachability" -l"Pods-TMCache" 
-l"Pods-UICKeyChainStore" -l"Pods-XMLDictionary" -l"sqlite3" -l
"z"-framework "Accelerate" -framework "AssetsLibrary" 
-framework "CoreLocation" -framework "Foundation" -framework
"ImageIO" -framework "Security" -framework "SystemConfiguration"
-framework "UIKit" -weak_framework "UIKit"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)   

यदि आपकी कॉन्फ़िग फ़ाइल ठीक से काम नहीं कर रही है तो अपने अन्य लिंकर ध्वज को $ (विरासत में मिला) सेट करें


0

यदि आर्किटेक्चर और लिंकर सेटिंग्स अच्छी लगती हैं, तो अपनी h फ़ाइलों की जाँच करें। मेरा मुद्दा एक ही त्रुटि था, लेकिन मैंने h फ़ाइलों को पुनर्गठित किया था और मैंने एक बाहरी बयान हटा दिया था। अन्य एम फाइलें उस चर का उपयोग कर रही थीं, जिससे लिंकर त्रुटि हुई।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.