ফাইল সর্বজনীন (তিনটি টুকরো), তবে এতে আইওএসের স্থির লাইব্রেরিগুলির জন্য কোনও (এন) এআরএমভি 7-স্লাইস ত্রুটি নেই, যাইহোক বাইপাসে যাওয়ার জন্য?


403

আমি এক্সকোড সংস্করণ আপগ্রেড করেছি এবং বাহ্যিক স্ট্যাটিক লাইব্রেরি ব্যবহার করার সময়, আমি এই বার্তাটি পাই:

ld: ফাইল সর্বজনীন (3 টি স্লাইস) তবে এতে একটি (এন) আর্মভি 7 স্লাইস নেই: / ফাইল / আর্কিটেকচার আর্মভি 7 এর ঝনঝনির জন্য অবস্থান: ত্রুটি: লিঙ্কার কমান্ডটি প্রস্থান কোড 1 সহ ব্যর্থ হয়েছে (অনুরোধটি দেখতে -v ব্যবহার করুন)

লাইব্রেরির বিকাশকারীরা তাদের লাইব্রেরিটি এখনও আপডেট না করে থাকলে এটিকে বাইপাস করে পাঠাগারে সমর্থন যোগ করার কোনও উপায় আছে কি?


এটি আপাতত ভাল সমাধান বলে মনে হচ্ছে - galloway.me.uk/2012/09/hacking-up-an-armv7s-Library
রাজাভন্যা সুব্রামণিয়ান

উত্তর:


418

আপনি যদি কোনও আর্কিটেকচারের জন্য সমর্থন সরাতে চান, উদাহরণস্বরূপ, আপনার ক্ষেত্রে এআরএমভি 7-গুলি , মেনু প্রকল্পটি ব্যবহার করুন -> সেটিংস তৈরি করুন -> "বৈধ আর্কিটেকচার" থেকে আর্কিটেকচারটি সরিয়ে দিন।

গ্রন্থাগারটি আপডেট না হওয়া পর্যন্ত আপনি এটি একটি অস্থায়ী সমাধান হিসাবে ব্যবহার করতে পারেন। আপনাকে লাইব্রেরি থেকে নয়, আপনার মূল প্রকল্প থেকে আর্কিটেকচারটি সরিয়ে ফেলতে হবে।

বিকল্পভাবে, আপনি আপনার ডিবাগ কনফিগারেশনের "বিল্ড অ্যাক্টিভ আর্কিটেকচার কেবল" হ্যাঁতে পতাকা সেট করতে পারেন। রিলিজ কনফিগারেশনের "বিল্ড অ্যাক্টিভ আর্কিটেকচার কেবল" না-তে ছেড়ে দিন, ঠিক এইরকম প্রকাশের আগে আপনি একটি অনুস্মারক পাবেন যে আপনি যে কোনও তৃতীয় পক্ষের লাইব্রেরি ব্যবহার করছেন তা আপগ্রেড করতে হবে।


11
আপনার গ্রন্থাগারটি পুনরায় সংকলন করতে হবে না। আপনি লাইব্রেরি ব্যবহার করছে এমন প্রকল্প থেকে এই পতাকাটি সরাতে পারেন।
নিকোলাস

4
এটি কার্যকর হবে, যেহেতু পুরানো অ্যাপ্লিকেশনগুলি যা আর্মভ 7 সমর্থন সহ সংকলিত হয়নি তাদেরও চালানো উচিত। তবে আপনি কিছু নির্দিষ্ট অপ্টিমাইজেশান শিথিল করবেন। এটি যাইহোক, সাময়িকভাবে কাজ করা উচিত।
নিকোলাস

2
ড্রপবক্স কাঠামো এই সমস্যাটির জন্য আপডেট করা হয়েছে ফোরাম.ড্রপবক্স
ডটিক.এফপি?

6
বৈধ আর্কিটেকচার তালিকা থেকে আর্মভি 7 সরিয়ে ফেলা আমার পক্ষে কাজ করেছিল, তবে এটি আর্কিটেকচার থেকে সরিয়ে ফেলেনি। তবে উভয় ক্ষেত্রেই আমি No architectures to compile for (ARCHS=i386, VALID_ARCHS=armv7).লিঙ্কারের কাছ থেকে পেয়ে যাব যা কেবলমাত্র i386বৈধ আর্কিটেকচার তালিকায় যুক্ত করেই আমি সমাধান করতে পারি ।
লেভিগ্রোকার

6
না, আর্মভি 7 এস এফ 6 প্রসেসরের নির্দেশ সেট যা আইফোন 5 এ ব্যবহৃত হচ্ছে এটি যেহেতু এ 6 পিছনের দিকে সামঞ্জস্যপূর্ণ তাই এটি আর্মভ 7 নির্দেশিকা সেটটি চালাবে।
নিকোলাস

191

আমি কেবলমাত্র টার্গেটের বিল্ড সেটিংসে "বিল্ড অ্যাক্টিভ আর্কিটেকচার ওল্ড" থেকে "হ্যাঁ" টগল করেছি এবং এখনই ঠিক আছে!


1
@ ব্লাসকো 73 আপনি কি জানেন যে আপনি দুর্দান্ত? তোমার উচিত. এখানে যায়, আপনি স্যার, দুর্দান্ত!
থানডাসুরু

15
এটি কীভাবে ভাল সমাধান হতে পারে। এটি ত্রুটিটি সরিয়ে দেয়, তবে আপনি কেবল বর্তমান খিলানের জন্য তৈরি করুন, সমস্ত বাজারে নয় ...
এস্পেনার

27

আইওএস 5.1 ফোনের জন্য এই সমস্যাটি থেকে মুক্তি পেতে প্রকল্পের "বৈধ আর্কিটেকচার" থেকে আর্মভি 7গুলি সরানোর চেষ্টা করুন


13

আমি এখানে একটি স্থিতি পোস্ট করেছি যা এই ক্ষেত্রেও প্রযোজ্য - মূলত, আপনি নিজের বাহ্যিক লাইব্রেরিতে একটি হেক্স সন্ধান এবং প্রতিস্থাপন করেন যাতে এটি মনে হয় যে এটি এআরএমভি 7 এর কোড নয়। lipoএটিকে 3 টি স্ট্যাটিক লাইব্রেরিতে ভাঙতে, এআরএমভি 7 টির সদৃশ / সংশোধন করার জন্য আপনাকে ব্যবহার করতে সক্ষম হতে হবে, তারপরে lipoসমস্ত 4 আর্কিটেকচারের জন্য একটি নতুন লাইব্রেরি একত্রিত করতে আবার ব্যবহার করুন ।


5

আইফোন 5 (এআরএমভি 7 এস) এর জন্য উদ্দীপনা সমর্থন যেমন আমি গতকালের পোস্টে উল্লেখ করেছি, বুধবার ঘোষণার পরপরই ফ্লুরি নতুন আইফোন 5 এ আরএমভি 7 প্রসেসরের সমর্থন করার জন্য আইওএস এসডিকে একটি সংস্করণে কাজ শুরু করে।

আমি আপনাকে জানাতে পেরে খুশি যে কাজটি শেষ হয়ে গেছে এবং এসডিকে এখন সাইটে উপলব্ধ।


4

মেনু প্রকল্প -> বিল্ড সেটিংস -> ব্যবহার করুন

তারপরে "বৈধ আর্কিটেকচার" থেকে আর্মভি 7 গুলি সরান। যদি মানটি চয়ন করা হয় তবে তা মুছুন এবং তারপরে আর্মভ 7 যুক্ত করুন।


1

যদি কারওর সাথে এটি ঘটে থাকে। তৃতীয় পক্ষের কোডটি ব্যবহার করার জন্য আমি আমার নিজস্ব লাইব্রেরি তৈরি করেছি। আমি যখন এটি সরবরাহ করার জন্য এটি তৈরি করছিলাম, আমি ঘটনাক্রমে আমার আইফোন 4 এস প্লাগ ইন রেখে দিয়েছিলাম এবং তাই এক্সকোড আমার লাইব্রেরিটি প্রকল্পের সেটিংস অনুসরণ না করে কেবল প্লাগড আর্কিটেকচারের জন্য তৈরি করে। যে কোনও প্লাগ ইন থাকা ডিভাইসগুলি সরিয়ে ফেলুন এবং লাইব্রেরিটি পুনর্নির্মাণ করুন, এটি লিঙ্ক করুন এবং আপনার ঠিক থাকা উচিত।

আশা করি এটা সাহায্য করবে.


0

আমার ক্ষেত্রে, আমি একটি তৃতীয় পক্ষের লাইব্রেরির সাথে সংযোগ দিচ্ছিলাম যা কিছুটা পুরানো ছিল (এক্সওড 5 / আইওএস 7 তে আইওএস 6 এর জন্য বিকাশিত)। অতএব, আমাকে তৃতীয় পক্ষের লাইব্রেরিটি আপডেট করতে হয়েছিল, একটি ক্লিন অ্যান্ড বিল্ড করতে হয়েছিল এবং এটি এখন সফলভাবে তৈরি হয়।

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