উত্তর:
আর্কিটেকচারগুলিই আপনি তৈরি করতে চান, বৈধ আর্কিটেকচারগুলিই আপনি আপনার কোডবেস দিয়ে বিল্ডিংয়ের কল্পনা করতে পারেন।
সুতরাং আপনি কেবল নিজের বাইনারিটি আর্মভ 7 এর জন্য তৈরি করতে চান তবে একই উত্স কোডটি আর্মভ 7 এবং আর্মভ 6 এর জন্য জরিমানা সংকলন করবে। সুতরাং VALID_ARCHS = armv6 armv7 armv7s
, তবে আপনি সেট করেছেন ARCHS = armv7s
কারণ আপনার কোডটি দিয়ে আপনি আসলে এটি তৈরি করতে চান ।
বা, অ্যাপল-এজে:
আর্চএস (আর্কিটেকচার)
শনাক্তকারীদের স্পেস-বিভাজিত তালিকা। আর্কিটেকচার (এবিআই, প্রসেসর মডেল) সুনির্দিষ্ট করে যেখানে বাইনারি লক্ষ্যবস্তু হয়েছে। যখন এই বিল্ড সেটিংটি একাধিক আর্কিটেকচার নির্দিষ্ট করে, উত্পাদিত বাইনারিটিতে নির্দিষ্ট প্রতিটি আর্কিটেকচারের জন্য অবজেক্ট কোড থাকতে পারে।
এবং:
VALID_ARCHS (বৈধ আর্কিটেকচার)
শনাক্তকারীদের স্পেস-বিভাজিত তালিকা। স্থাপত্যগুলি নির্দিষ্ট করে যার জন্য বাইনারি নির্মিত হতে পারে be বিল্ড চলাকালীন, এই তালিকাটি ARCHS বিল্ড সেটিংয়ের মান দিয়ে ছেদ করা হয়; ফলাফল তালিকা বাইনারি চলতে পারে আর্কিটেকচার নির্দিষ্ট করে। যদি ফলাফলের আর্কিটেকচারের তালিকাটি খালি থাকে তবে লক্ষ্যটি কোনও বাইনারি তৈরি করে না।
উত্স: এক্সকোড বিল্ড সেটিং রেফারেন্স
অনুশীলনে, আপনি VALID_ARCHS
একা ছেড়ে যান এবং এটি পরিবর্তন করার বিষয়ে চিন্তা করবেন না, এবং ARCHS
আপনি যে আর্কিটেকচারগুলি তৈরি করতে চান তা সেট করতে কেবল ঝাঁকুনি । সাধারণত, আপনি কেবলমাত্র একটি ডিবাগ বিল্ড সেট করেছেন NATIVE_ARCH
, যেহেতু আপনি কেবল সেই মেশিনটির জন্য ডিবাগ সংস্করণ তৈরি করতে চান যা আপনি এটি চালনা / চালনা করছেন এবং রিলিজ আপনি যে পরিকল্পনাগুলির সমর্থন করার পরিকল্পনা করছেন তার পুরো বর্ণালী তৈরি করে।
অ্যাপল ডকুমেন্ট থেকে, আমরা জানি যে বাইনারি এক্সকোডটি তৈরি করবে এটি তালিকাটিকে Valid Architectures
ছেদ করা তালিকা Architectures
।
সুতরাং, আমি জেরেমির উত্তর সঠিক বলে মনে করি না, যেমনটি তিনি বলেছেন:
সুতরাং আপনি কেবল নিজের বাইনারিটি আর্মভ 7 এর জন্য তৈরি করতে চান তবে একই উত্স কোডটি
আর্মভ 7 এবং আর্মভ 6 এর জন্য জরিমানা সংকলন করবে । সুতরাংVALID_ARCHS = armv6 armv7 armv7s
, তবে আপনি ARCHS = আর্মভ set গুলি সেট করেছেন কারণ আপনার কোডটি দিয়ে আপনি আসলে এটিই তৈরি করতে চান।
যখন আপনি সেট VALID_ARCHS = armv6 armv7 armv7s
এবং সেট করেন ARCHS = armv7s
, তখন বাইনারি এক্সকোডের ফলাফলটি আর্মভ s এস হয়। এটি আর্মভি / / আর্মভ with এর সাথে সামঞ্জস্য করতে পারে না।
এবং যদি আপনি আর্মভি 6 / আর্মভি 7 / আর্মভি 7 এর সাথে সামঞ্জস্য করতে চান - আপনার অবশ্যই সেট করা উচিত VALID_ARCHS = armv6 armv7 armv7s
এবং ARCHS = armv6
। এই পদ্ধতিতে, বাইনারি এক্সকোডের ফলাফলটি আর্মভি 6 তৈরি করবে এবং আর্ম প্রসেসর পিছনের দিকের সাথে সামঞ্জস্যপূর্ণ হওয়ায় এটি উভয় আর্মভি 6 / আর্মভি 7 / আর্মভি 7 উপর সূক্ষ্মভাবে চলতে পারে it ।