সুইফট ৪.০ সহ সংকলিত মডিউলটি সুইফট ৪.০.১ এ আমদানি করা যায় না


92

তবে আমি একই এক্সকোড ব্যবহার করে কাঠামোটি পুনরায় কম্পাইল করেছি এবং এটি এখনও আমাকে এই ত্রুটি দেয়।

  • বেস এসডিকে আইওএস 11.1 উভয়ের জন্য
  • উভয়ের জন্য সুইফট ল্যাঙ্গুয়েজ সংস্করণ সুইফট ৪.০
  • পডস / কার্থেজ ব্যবহার করছেন না

আমি আশা করি কেউ জানতে পারে


দেখে মনে হচ্ছে অ্যাপলকে উদ্দেশ্যগত সি: 10 বছরের অবমূল্যায়নের নোটিশটি নিয়ে পুনর্বিবেচনা করা দরকার: এটি এখন> 1 প্রকল্পে আমাকে কামড় দিয়েছে এবং এই উভয় ক্ষেত্রেই তৃতীয় পক্ষের বাইনারি ফ্রেমওয়ার্ক রয়েছে।
আন্তন ট্রপ্যাশকো

উত্তর:


139

হালনাগাদ:

এক্সকোডের সংস্করণ প্রকাশের জন্য:

এক্সকোড 9.1, 9.2, 9.3, 9.4, 10, ইত্যাদির সাহায্যে কোনও প্রজেক্ট খোলার সময় এই ত্রুটিটি (এবং সুইফট ৪.১, ৪.২, ইত্যাদি সম্পর্কিত) ত্রুটি ঘটবে যা পূর্ববর্তী এক্সকোড সরঞ্জামগুলির সাহায্যে নির্মিত ফ্রেমওয়ার্ক ব্যবহার করে।

সমস্যা সমাধানের জন্য, নতুন আপডেট হওয়া carthage update --platform iOSএক্সকোড সরঞ্জামগুলির সাহায্যে কার্থেজ ( ), কোকোপডস ( pod updateবা pod install), বা ম্যানুয়ালি ব্যবহার করে আপনার ফ্রেমওয়ার্কগুলি আপডেট এবং পুনর্নির্মাণ করুন । আপনি এক্সকোড আপডেট করার সময় সরঞ্জামগুলি স্বয়ংক্রিয়ভাবে আপডেট হওয়া উচিত, তবে যদি তা না হয় তবে আপনি মূল উত্তরে নীচে বর্ণিত পদক্ষেপগুলি অনুসরণ করতে পারেন।

এক্সকোড ক্যাশেড ফ্রেমওয়ার্ক বিল্ড ব্যবহার না করার জন্য আপনার প্রকল্পটি cmd + shift + kএবং সম্ভবত আপনার বিল্ড ফোল্ডারটি সাফ করার প্রয়োজন হতে পারে cmd + option + shift + kto

কিছু ক্ষেত্রে আপনাকে আপনার উদ্ভূত ডেটা ফোল্ডারটি মুছতেও পারে (খুব সহজেই এক্সকোড পছন্দসমূহ -> অবস্থানগুলি -> উত্পন্ন ডেটা ফোল্ডার ( ধন্যবাদ স্টুনার ) এ গিয়ে পাওয়া যায় )

এক্সকোডের বিটা সংস্করণের জন্য:

নীচের মূল উত্তরটি দেখুন এবং তারপরে উপরের পদক্ষেপগুলি অনুসরণ করুন।

আসল উত্তর:

আপনার সম্ভবত আপনার এক্সকোডবিল্ড সরঞ্জামগুলি এক্সকোড 9.0 এ সেট করা আছে যা সুইফট ৪.০ এর সাথে বিল্ড করে এবং এটি এক্সকোড ৯.১ বিটার সুইফট ৪.০.১ এর সাথে সঙ্গতিপূর্ণ নয়।

কমান্ডটি ব্যবহার করে টার্মিনালটি পরীক্ষা করুন:

xcodebuild -version

অথবা কেবল এক্সকোড পছন্দসমূহ -> অবস্থানগুলিতে যান এবং কমান্ড লাইন সরঞ্জামগুলি চেক করুন / এক্সকোড 9.1 এ পরিবর্তন করুন। আপনার তখন সেট করা উচিত।


4
আমি ডেরিভড ডেটাও সাফ করে দিয়েছি, এবং প্রকল্পটি সাফ করেছি, সবার জন্য প্রয়োজনীয় কিনা তা জানি না তবে এখানে এটি মনে হয়েছিল। ধন্যবাদ
সাইমন

4
হাই @ জিগ আমি গিথুব (mattdonnelly / swifter) এ যে রেপো ব্যবহার করি তা সুইফট ৪.০ এ রয়েছে তবে অবশ্যই এক্সকোড ৯.০ ব্যবহার করে সংকলন করা হয়েছে, সুতরাং আমি এই সমস্যাটি পাচ্ছি getting এক্সকোড ৯.১ এবং তারপরের জন্য গিথুবে অন্য কারও কোকোপডকে পুনরায় সংকলনের জন্য প্রয়োজনীয় পদক্ষেপগুলি কী কী?
জোসেফ বেইস 'মম

4
কমান্ড লাইন সরঞ্জাম যুক্ত করার উপায় আছে? আমার কমান্ড লাইন ড্রপডাউনটিতে আমি মাত্র Xcode 9.3 পেয়েছি। এবং আমারও এই সমস্যাটি রয়েছে
tara tandel

4
আমার কয়েকটি পোড সুইফট ৪.২-এর জন্য প্রস্তুত নয়, তাই তাদের জন্য আমাকে পিন করতে Swift Language Versionহয়েছিল Swift 4। তারপর এটি কাজ করে।
skofgar

4
বিল্ড ফোল্ডার সাফ করার জন্য শর্টকাটের জন্য প্লাস 1 - অফহ্যান্ড কীভাবে করতে হয় তা আমি জানতাম না।
ম্যাট

25

আমার সমস্যাটি একটি বহিরাগত কাঠামোটি সুইফট ৪.০.২ এর জন্য সংকলিত না হওয়ার কারণে হয়েছিল। আমি এই ফাইলটি কার্থেজের মাধ্যমে যুক্ত করেছি , তাই চলমান:

carthage update --platform iOS

এবং তারপরে প্রকল্পটি পরিষ্কার করা cmd + shift + kএবং ফোল্ডার তৈরি করা cmd + option + shift + kএবং উত্পন্ন ডেটা ফোল্ডারটি মুছে ফেলা (কেবল এটি ট্র্যাশের কাজগুলিতেও সরানো) আমার জন্য কাজ করেছিল।


4
প্রকৃতপক্ষে, এটি মূলত সমাধান। অ্যাপলের সাম্প্রতিক সুইফ্ট আপডেটের কারণে ঠিক আজ (18 এপ্রিল) একই ঘটনা ঘটেছে! :)
ফ্যাটি

সিএমডি + অপশন + শিফট + কে হ'ল কার্থেজ আপডেট করার পরে কৌশলটি কী করেছিল। ধন্যবাদ!
লিওনার্দো লেইট

15

আমার ক্ষেত্রে, আমি সুইফটইউআই পরীক্ষা করতে এক্সকোড 11 বিটা সংস্করণ ডাউনলোড করেছি। আমি যখন আমার প্রকল্পটি চালাচ্ছি, তখন আমি পেয়েছিলাম "সুইফট 5.1 এর সাথে সংকলিত মডিউলটি সুইফ্ট 5.0.1 সংকলক দ্বারা আমদানি করা যায় না: ..." ত্রুটি।

এই সমস্যাটি সমাধান করতে। আমি এক্সকোড কমান্ড লাইন সরঞ্জামকে নতুন এক্সকোড 11 মন্তব্য লাইন সরঞ্জামে পরিবর্তন করেছি। এর পরে, আপনি সুইফটইউআই দিয়ে নতুন এক্সকোড প্রকল্প তৈরি করতে পারেন।

এক্সকোড -> পছন্দসমূহ -> অবস্থান -> এক্সকোড কমান্ড লাইন সরঞ্জাম

এক্সকোড কম্যান্ডেট লাইন সরঞ্জাম

আমি আশা করি, এটি এমন কাউকে সহায়তা করবে যারা নতুন ফ্রিমওয়ার্কের সাথে পরীক্ষা করতে চায় :)


9

এখান থেকে আপনার জন্য কাজ করা নির্দিষ্ট Xcode সংস্করণের Xcode Toolchain ইনস্টল করুন

একটি এক্সকোড সরঞ্জামচেইনে সুইফ্টের একটি নির্দিষ্ট সংস্করণে কাজ করার জন্য সম্মিলিত বিকাশের অভিজ্ঞতা সরবরাহ করার জন্য প্রয়োজনীয় সংকলক, এলএলডিবি এবং অন্যান্য সম্পর্কিত সরঞ্জামগুলির একটি অনুলিপি রয়েছে।

এক্সকোডের পছন্দগুলি খুলুন, উপাদানগুলি> সরঞ্জামচেইনগুলিতে নেভিগেট করুন এবং ইনস্টল করা সুইফট সরঞ্জামচয়ন নির্বাচন করুন।

এটি আপনাকে আপাতত সংকলন এবং চালনা করতে দেবে let


2 দিনের সন্ধানের পরে এবং কার্থেজ আপডেট, বুটস্ট্র্যাপ, সুইফট ভাষার সেটিংস ইত্যাদির সাথে প্রতিটি সম্ভাব্য সমাধান চেষ্টা করার পরে আমি এখানে সঠিক উত্তরটি খুঁজে পেয়েছি :)
মেম্রেসবাসী

7

আমি এই সমস্যাটি এক্সকোড 10 বিটা দিয়ে আঘাত করেছি, যা সুইফট ৪.২ যোগ করে। আমার সমস্যা কার্থেজ বা কোনও বাহ্যিক নির্ভরতার সাথে সম্পর্কিত নয়।

YourTarget > Build Settings > Swift Language Versionআপনার সমস্ত এক্সকোড টার্গেটের জন্য যান ।

আমার সব প্রস্তুত ছিল Swift 4

একটি অনুলিপি ফাইলগুলি বিল্ড ফেজ যোগ করার পরে, আমি ত্রুটি পেতে শুরু করি

: 0: ত্রুটি: সুইফট 4.1.2 এর সাথে সংকলিত মডিউলটি সুইফট 4.2 সংকলক দ্বারা আমদানি করা যাবে না: / ব্যবহারকারী / ব্যবহারকারী / লাইব্রেরি / ডেভেলপার / এক্সকোড / ডেরিভডডাটা / মাইএপ -ফাস্কফ্রাইহমফসিডিবিজেক্সিসজেভিবিফিশ্পপি / বিল্ড / ইনটারমেড.বাইগস / মাই অ্যাপস / মাই অ্যাপস মাইএপএক্সটেনশন.বিল্ড / অবজেক্টস-নরমাল / এক্স 8686__64৪ / মাই ক্লাসেস পার্টিশিয়াল.সুইফ্ট মডুল

কমান্ড মার্জসুইফটমডুল একটি ননজারো প্রস্থান কোড সহ ব্যর্থ হয়েছে

আমি তখন প্রতিটি টার্গেট এর সেট Swift Language Versionথেকে Swift 4.2, যা ভুল কাটানো।

আমি নিশ্চিত নই যে ত্রুটিটি কেন প্রথম স্থানে ঘটছিল, যদিও, সমস্ত লক্ষ্যমাত্রা Swift 4সমানভাবে বৈধ হওয়া উচিত।


4
আমাকে খুঁজে পেতে সমস্যা হচ্ছেBuild Settings
চ্যানড্রু

@ চ্যাণ্ড্রু প্রথমে আপনার টার্গেটে ক্লিক করুন। আপডেট উত্তর।
pkamb

3

আমার ক্ষেত্রে (এক্সকোড 9.2):

আমি এক্সকোডে গিয়েছিলাম Preferences > Locations > Derived Data

আমি তখন ডেটা মুছে ফেললাম এবং একটি পরিষ্কার বিল্ড করেছি এবং ঠিক আছে।


1

আমার ক্ষেত্রে, আমি cocoapods-binaryবাইনারিগুলিতে গ্রন্থাগারগুলি তৈরি করতে প্লাগইন সহ কোকোপড ব্যবহার করেছি । আমি Xcode 10 থেকে 11 এ আপগ্রেড করার পরে, Xcode আমাকে এই ত্রুটি দেয়:

Module compiled with Swift 5.0.1 cannot be imported by the Swift 5.1 compiler

আমি সরিয়ে এটা ঠিক /Podsডিরেক্টরি ও চলমান pod install


0

আমার ক্ষেত্রে, ফ্রেমওয়ার্কটি যে সংস্করণে অভিযোগ করছে তার সাথে আমি এটি পুনরায় সংকলন করেছি।

পুনরায় pod updateসংকলন করতে, কার্থেজ চালাতে বা আপডেট করতে (যা আপনি ব্যবহার করছেন এমন এক) এবং প্রকল্পটি তৈরি করুন।

তারপরে ফাইন্ডারে কাঠামোটি অনুসন্ধান করুন। theFramework.frameworkআপনার প্রকল্পটিতে কপি-পেস্ট করুন এবং "প্রয়োজনে আইটেমগুলি অনুলিপি করুন" তা নিশ্চিত করুন the প্রকল্পটি আবার তৈরি করুন এবং এটি কাজ করা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.