-আর_লোড লিঙ্কার পতাকা কী করে?


123

উদ্দেশ্য-সি কোডটি সংকলন করার সময়-সমস্ত_ডোল পতাকা কী করে তা আমি কোথাও খুঁজে পাচ্ছি না।

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

কেউ যে আমাকে সাহায্য করতে পারেন?

ধন্যবাদ


2
সাধারণত, আপনি এটির সাথে দেখতে কোনও ত্রুটি অ্যাপ্লিকেশনটি চালানোর সময় ডিভাইসে ঘটে। আপনি কি বলছেন যে আপনি অ্যাপল দ্বারা পর্যালোচনার জন্য জমা দেওয়ার আগে প্রকৃত হার্ডওয়্যারটিতে আপনার আবেদনটি পরীক্ষা করেন নি? যদি তা হয় তবে এটি খুব, খুব খারাপ ধারণা।
ব্র্যাড লারসন

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

উত্তর:


144

এটা সম্ভবত এই প্রযুক্তিগত নোট সঙ্গে সম্পর্কযুক্ত https://developer.apple.com/library/content/qa/qa1490/_index.html

গুরুত্বপূর্ণ: -৪-বিট এবং আইফোন ওএস অ্যাপ্লিকেশনগুলির জন্য, এমন একটি লিঙ্কার বাগ রয়েছে যা -ObjC কে স্থির লাইব্রেরি থেকে অবজেক্ট ফাইল লোড করা থেকে বাধা দেয় যেখানে কেবল বিভাগ এবং কোনও শ্রেণি নেই। কর্মক্ষেত্রটি হ'ল-সমস্ত_লোড বা-ফোর্স_লোড ফ্ল্যাগগুলি ব্যবহার করা। -ল_লোড লিঙ্কারকে এটি দেখায় এমন প্রতিটি সংরক্ষণাগার থেকে সমস্ত বস্তু ফাইল লোড করতে বাধ্য করে, এমনকি উদ্দেশ্য-সি কোড ছাড়াই। -ফোর্স_লোড এক্সকোড ৩.২ এবং তারপরে পাওয়া যায়। এটি সংরক্ষণাগার লোডিংয়ের সূক্ষ্ম দানা নিয়ন্ত্রণের অনুমতি দেয়। প্রতিটি-ফোর্স_লোড বিকল্প অবশ্যই একটি সংরক্ষণাগারটির পথে অনুসরণ করা উচিত এবং সেই সংরক্ষণাগারটিতে থাকা প্রতিটি বস্তু ফাইল লোড হবে।


3
হ্যাঁ, এটি প্রাথমিকভাবে আইফোনের জন্য স্থির লাইব্রেরিগুলির সাথে খেলতে আসে। যদি তারা এই লিঙ্কার পতাকা ব্যতীত সংকলিত হয় তবে বিভাগগুলি অন্তর্নির্মিত বাইনারিতে অন্তর্ভুক্ত হয় না এবং এই স্থির লাইব্রেরি ব্যবহার করে যে কোনও অ্যাপ্লিকেশনটিতে আইফোন ওএস হার্ডওয়্যারে চালিত হওয়ার সময় রানটাইম ত্রুটি থাকবে।
ব্র্যাড লারসন

1
সংকলনের সময় অনুপস্থিত পদ্ধতির কিছু সতর্কতা বা ত্রুটি থাকা উচিত নয়?
গাই ইফ্রয়িম

18
না, কারণ সংকলন সময়ে বিভাগগুলি বিদ্যমান, সেগুলি কেবল চূড়ান্ত বাইনারিতে লিঙ্ক করা হচ্ছে না। তবে ওবজ-সি প্রেরণের গতিশীল প্রকৃতির কারণে, লিঙ্কারটি কলিং কোডটি সরাসরি প্রয়োগকারী পদ্ধতির দিকে নির্দেশ করে না, তাই এটি কখনই অনুপস্থিত লক্ষ্য করে না। তারপরে রানটাইমের সময় আপনি কাবুমটি পেয়ে যাবেন, যেমনটি আপনি "পারফর্মসিলিেক্টর:" ব্যবহার করে ডাকতেন
সোফিসটিফুঙ্ক

14
কেবল প্রযুক্তিগত নোটটি স্পষ্ট করতে চান: বেশিরভাগ সময় আপনি -ObjC লিংক পতাকাটি চান, না সমস্ত-লোড। -ল_লোডের প্রস্তাব দেওয়া হয় (আমি বিরল ধারণা করব) উদাহরণে যেখানে আপনার কোনও শ্রেণি নেই, কেবল বিভাগ নেই।
ক্রিস হিল

3
মতে stackoverflow.com/a/2615407/62 এই উপর XCode 4.2 হিসাবে সংশোধন করা হয়েছে, তাই আপনি -all_load বা -force_load পতাকা আর প্রয়োজন হবে না। আপনার এখনও দরকার - ওবিজেসি।
লিরন ইয়াহদাভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.