কোডে কোনও পরিবর্তনের সাথে (যদিও ফাইল .pch এ নেই), সম্পূর্ণ প্রকল্পটি প্রতিবারই সংশোধন করে।
কোডে কোনও পরিবর্তনের সাথে (যদিও ফাইল .pch এ নেই), সম্পূর্ণ প্রকল্পটি প্রতিবারই সংশোধন করে।
উত্তর:
আপডেট 2017/1/2
এই সমস্যাটি Xcode 8.2.1 এ সমাধান করা হয়নি (আমার প্রকল্পের জন্য)
কীভাবে বাঁচবো?
Code IDE: Xcode/Atom
Build: xcrun
Debug: Xcode (Control + Command + R)
আপডেট 2016/12/17
এই সমস্যাটি Xcode 8.2 এ সমাধান করা হয়নি।
আপডেট 2016/12/12
কোডটি তৈরি করতে এবং ডিবাগ করার জন্য কমান্ড লাইনটি এখন আমার পছন্দ। আশা করি শীঘ্রই অ্যাপল এই বৈধ বাগটি ঠিক করবে।
আপডেট 2016/12/04
এই সমস্যাটি Xcode 8.2 (বিটা 2) দিয়ে সমাধান হয়েছে বলে মনে হচ্ছে ।
তবে আমার পক্ষে এটি সমাধান করা হবে না, আমি এক্সকোড ৮.২ ব্যবহার করার পরেও আমি এই সমস্যার মুখোমুখি। আপনি এটি ব্যবহার করে দেখতে পারেন ( এখানে Xcode8.2 বিটা 2 ডাউনলোড করুন )
বিল্ড সিস্টেম • কেবলমাত্র ছোট পরিবর্তন ঘটে গেলে এক্সকোড একটি সম্পূর্ণ লক্ষ্য পুনর্নির্মাণ করতে পারে না। (28892475)
পুরানো উত্তর: এটি প্রায় কাজ:
"বিল্ড সেটিং" ট্যাব -> "সি ভাষা ডায়ালেক্ট" -> এটিকে "সংকলক ডিফল্ট" এ পরিবর্তন করুন।
"সি ল্যাঙ্গুয়েজ ডায়ালেক্ট" "সংকলক ডিফল্ট" এর পরিবর্তে "GNU99" এ সেট করা হয়েছিল। আগে মানটি জিএনইউ৯৯ ছিল তবে এখন তা নয়। এক পর্যায়ে Xcode লাইব্রেরি প্রকল্পের সেটিংস সঠিকভাবে স্থানান্তরিত করতে পারেনি এবং তাই এটি GNU99 এ সেট করা হয়েছে। আমি একবার এটি GNU99 এ পরিবর্তন করে ফেললে এটি প্রতিবার আমার কোডগুলি পুনরায় সংবিধান বন্ধ করে দিয়েছে!
পণ্য -> স্কিম -> সম্পাদনা প্রকল্পে যান। বাম দিকের কলামে বিল্ড নির্বাচন করুন এবং " অন্তর্নিহিত নির্ভরতাগুলি অনুসন্ধান করুন " নির্বাচন করুন
আপনি যখন প্রথমবারের মতো প্রকল্পটি তৈরি করছেন তখন এই পতাকাটি অবশ্যই পরীক্ষা করা উচিত ..
আমার জন্য ফিক্সটি কেবল স্টোরিবোর্ডটি বন্ধ ছিল, আমার সহায়িকা সম্পাদকের সাথে উত্স ফাইলটি খোলা ছিল এবং স্টোরিবোর্ড ফাইলটিও খোলা হয়েছিল (স্টোরিবোর্ডটি বন্ধ করছে --- যেহেতু আমি এতে কোনও পরিবর্তন আনছি না) সমস্ত অপ্রয়োজনীয় সংকলন মুছে ফেলেছে
আপডেট
আমি যে একক বৃহত্তম অগ্রগতি অর্জন করতে পেরেছিলাম তা হ'ল আমার প্রকল্পটি মডুলারি করা। বিশেষত ORM স্তরটি মডিউলাইজিং যা প্রায় প্রতিটি ক্লাসে ব্যবহৃত হয়। কোডটি আমার প্রকল্পের মধ্যে একটি পৃথক লক্ষ্যে স্থানান্তরিত করে এবং একটি মডিউল হিসাবে এটি আমদানি করে আমি সংকলনের সময়গুলিকে ব্যাপকভাবে উন্নত করতে সক্ষম হয়েছি। আমি যখন কোনও বিল্ড করি তখন এক্সকোড অপ্রয়োজনীয় ফাইলগুলি পুনরায় সংকলনের সিদ্ধান্ত নেয় না।
এখন আমি দ্রুত বর্ধনশীল ডিবাগ বিল্ডগুলির জন্য একক ফাইল সংকলন পদ্ধতি ব্যবহার করি।
কোড রিফ্যাক্টরিং, https://medium.com/rocket-fuel/optimizing-build-times-in-swift-4-dc493b1cc5f5 সহ এই লিঙ্কে আরও কিছু ভাল পরামর্শ রয়েছে
পুরোনো
এক্সকোড ৯ নিয়ে এখনও আমার কাছে একটি অবিরাম সমস্যা হয়ে দাঁড়িয়েছে আপনার অনেকের মতো আমি অনেক সোর্স ফাইলের সাথে একটি বৃহত সুইফট 4 / কোকোপডস প্রকল্পে কাজ করছি এবং প্রতিবার প্রতিটি ফাইল পুনরায় সংকলন উত্তেজক is
এখন পর্যন্ত আমি নিম্নলিখিত সেটিংসের সাথে সেরা ফলাফল পাচ্ছি। আমি আপনাকে এটি ব্যবহার করে দেখার পরামর্শ দিচ্ছি এবং দেখুন এটি আপনার জন্য কীভাবে কাজ করে।
যুক্ত কাস্টম ব্যবহারকারী-সংজ্ঞায়িত বিল্ড সেটিংস,
দ্রষ্টব্য: পুরো মডিউল অপ্টিমাইজেশনের জন্য আমার কাছে কাস্টম ব্যবহারকারী-সংজ্ঞায়িত সেটিং নেই।
আমি আমার প্রিফিক্স শিরোলেখ সম্পর্কিত কিছু কোড পরিবর্তন করেছি যা দেখে মনে হয় যে এই সমস্যাটি স্থির হয়েছে। আমি জানি না কোনটি আসলে কৌতুক করেছিল, তবে আমি তাদের সকলকে এই আশায় ভাগ করব যে এটি অন্য কাউকে সাহায্য করবে helps আপনার যদি উপসর্গের শিরোনাম সেট না থাকে তবে আমি অনুমান করি এটি সমস্যা নয় (বা সমস্যাটি বহুমুখী)।
@import MyModule
)। (আমার জন্য, এই এবং প্রথম ধাপটি এক এবং একই ছিল))যদি এটি এখনও কাজ না করে, আপনি আপনার উপসর্গ শিরোনাম থেকে আরও কিছু আমদানি সরিয়ে চেষ্টা করতে পারেন। এটি ট্রিপ আপ কিছু হতে পারে ...
দেখে মনে হচ্ছে যে তারা https://forums.developer.apple.com/thread/62737 অনুসারে এটিতে সক্রিয়ভাবে কাজ করছে তবে এটি যোগ করার মতো কাজ
HEADERMAP_USES_VFS = YES
আপনার টার্গেটের বিল্ড সেটিংসের আওতায় (প্রকল্প -> লক্ষ্য -> বিল্ড সেটিংস -> ব্যবহারকারী সংজ্ঞায়িত)।
গত এক মাস ধরে ধারাবাহিকভাবে আর কোনও সমাধান না করে এই সমাধানটি আমার জন্য প্রতিবারই কাজ করেছে।
সম্পাদনা: এখনও মাঝে মাঝে সবকিছু পুনরায় সংশোধন করে, যদিও এটি নির্ধারণ করা এই সেটিংটি দিয়ে খুব কম ঘন ঘন এটি করে বলে মনে হচ্ছে।
@IBDesignable
আমার বিশেষ ক্ষেত্রে এক্সকোড বিল্ড প্রকল্পের সময়কালে আপনার সমস্ত কোড নির্দেশের জন্য পরীক্ষা করে দেখুন কারণ আমার স্টোরিবোর্ডে আমার কিছু মতামত ছিল যা এতে এই @IBDesignable
বৈশিষ্ট্যগুলি ধারণ করে। দ্বিতীয় জিনিসটি হ'ল আমিও আমার স্টোরিবোর্ডটি পৃথক উইন্ডোতে খোলা করেছি (ট্যাব নয়) যা আমার এক্সকোডকে সমস্ত সিমুলেটরগুলির জন্য চিরকালের জন্য চাপ দেয়।
@IBDesignable
নির্দেশনা ব্যবহার করি ... বিশেষত এমন কিছু আছে যা আমাদের সন্ধান করা উচিত?
মাধুরী মনে একেবারেই সঠিক। আরও কিছুটা স্পষ্টতা যুক্ত করার জন্য, কয়েকটি গুরুত্বপূর্ণ বিষয় লক্ষ্য করুন:
আপনার লক্ষ্য নির্ভর করে এমন লাইব্রেরি / ফ্রেমওয়ার্কগুলিতে যদি অন্তর্নিহিত নির্ভরতা থাকে তবে এটি কেবলমাত্র প্রযোজ্য।
যদি "অন্তর্ভুক্ত নির্ভরতাগুলি সন্ধান করুন" অক্ষম করা থাকে:
ফলাফল: অ্যাপ্লিকেশন লক্ষ্য তৈরির আগে গ্রন্থাগারটি তৈরি হবে না। অ্যাপ্লিকেশন লক্ষ্য তৈরি করতে ব্যর্থ।
ফিক্স: দ্বিতীয় দৃশ্যটি না ঘটে তা নিশ্চিত করার জন্য আপনাকে অবশ্যই লক্ষ্যগুলি তালিকায় প্রয়োজনীয় লক্ষ্যগুলি যুক্ত করতে হবে এবং সেগুলি সঠিকভাবে অর্ডার করতে হবে।
উত্স এবং এই বিষয়ে আরও পড়া: https://pewpewthespells.com/blog/managing_xcode.html#scheme-action
এখন যদি আপনার পুরো প্রকল্পটি একটি টার্গেটের মধ্যে রাখা হয় এবং এটি সঙ্কলনে 4 মিনিট সময় লাগে তবে উপরের সুবিধাটি গ্রহণের জন্য ফ্রেমওয়ার্কগুলিতে এটি ভাঙা বা সংকলনটি কোথায় পিছিয়েছে তা নির্ধারণ করা ব্যতীত আপনি এগুলি করতে পারবেন না। আপনি যদি পেইন্টকোডের মতো কিছু ব্যবহার করছেন বা দ্রুতগতিতে ইউআইকিট কোডের বৃহত অংশগুলি এটির উদ্দেশ্য-সিতে পরিবর্তন করুন এটি আরও দ্রুত সংকলন করে
অ্যাপল গতকাল (নভেম্বর 14) এক্সকোডের নতুন বিটা সংস্করণ প্রকাশ করেছে
Xcode 8.2 beta 2
এবং এই ইস্যুটি প্রকাশের নোটে সমাধান হিসাবে চিহ্নিত হয়েছে।
বিল্ড সিস্টেম
Only যখন কেবলমাত্র ছোট পরিবর্তন ঘটে থাকে তখন এক্সকোড একটি সম্পূর্ণ লক্ষ্য পুনর্নির্মাণ করে না। (28892475)
এটা আমার জন্য কাজ করছে। বিল্ড স্পিড যথারীতি ফিরে এসেছিল। এই সমস্যাটির মুখোমুখি প্রত্যেকেরই এটি চেষ্টা করা উচিত!
দয়া করে প্রকল্পের বিল্ড সেটিং এ যান এবং "সি ল্যাঙ্গুয়েজ ডায়ালেক্ট" পরিবর্তন করুন।
আপনি যখন এক্সকোড সংস্করণ আপডেট করেন তখন "সি ল্যাঙ্গুয়েজ ডায়ালেক্ট" "কমপ্লায়ার ডিফল্ট" এর পরিবর্তে "GNU99" তে সেট করা থাকে। এক পর্যায়ে Xcode লাইব্রেরি প্রকল্পের সেটিংস সঠিকভাবে স্থানান্তরিত করতে পারেনি এবং তাই এটি GNU99 এ সেট করা হয়েছে। এটি সমস্যার সমাধান করবে
আপনি যদি সুইফ্ট ফাইলটিতে অ্যাপ তৈরি করতে শুরু করে থাকেন তবে সর্বশেষ ট্যাবে যান এবং "নির্ভরতাগুলি পরীক্ষা করুন" পর্যায়ে বিল্ড লগটিতে ক্লিক করুন, বিল্ডটি থামান এবং এটি আবার চালান। দ্বিতীয় রানটিতে এটি কেবল আপনার সংশোধিত ফাইলগুলি তৈরি করা উচিত। সঠিকভাবে করা থাকলে আমি খুঁজে পেয়েছি এটি প্রতিবার কাজ করে। কোনও প্রকল্পের সেটিং পরিবর্তন করার দরকার নেই।
এটি এক্সকোডে একটি বাগ হিসাবে উপস্থিত হবে।
আপনি যদি দেখতে পান যে অ্যাপটি একটি সম্পূর্ণ বিল্ড করছে তবে বিল্ডটি বন্ধ করুন এবং এই কৌশলটি আবার চেষ্টা করুন।
আপনি যদি কোডটিতে কোনও পরিবর্তন না করেন তবে অ্যাপটি তৈরি না করে চালানোর জন্য সিএমডি + সিটিআরএল + আর ব্যবহার করুন যা ডিবাগার সংযুক্ত করে। অ্যাপ তৈরি করবে না তবে অপ্রয়োজনীয় সময় বাঁচাতে সহায়তা করতে পারে।
আমার পক্ষ থেকে ইস্যুটি "অন্তর্ভুক্ত নির্ভরতাগুলি অনুসন্ধান করুন" সমাধানটিতে আনচেক প্রয়োগ করে ঠিক করা হয়েছে।
তবে মনে রাখবেন আপনি কোকোপড ব্যবহার করছেন কিনা, সেগুলি নির্বাচন করে আপনার পোড প্রকল্পেও এই সেটিংস প্রয়োগ করতে
পণ্য -> প্রকল্প -> পডস - "আপনারপ্রজেক্টনাম"
এছাড়াও প্রয়োগ করুন:
পণ্য -> প্রকল্প -> "আপনার প্রকল্পের নাম"
এটি আমাকে সহায়তা করে, তাই আমি আশা করি এই ইঙ্গিতটি অন্য কাউকে সহায়তা করে।
ধন্যবাদ
চেষ্টা করুন: ১. প্রকল্পে নেভিগেট করুন ২. বিল্ড সেটিংসে ক্লিক করুন 3.. পরীক্ষা করুন যে অপটিমাইজেশন লেভেল ডিবাগিংয়ের জন্য কোনওটিতে সেট করা নেই। ৪. ব্যবহারকারী-সংজ্ঞায়িত সেটিং যুক্ত করুন ক্লিক করুন S. হ্যাঁতে SWIFT_WHOLE_MODULE_OPTIMIZATION সেট করুন।
এক্সকোডের আরও সংকলনের সময়, IRAMDISK (ভার্চুয়াল মেমরি ডিস্ক) ব্যবহার করতে পারেন। সংকলনের সময় হ্রাস করার জন্য খুব দরকারী এবং কার্যকর উপায়।
এছাড়াও প্রায়শই ব্যবহৃত অ্যাপ্লিকেশনটি দ্রুতগতিতে ব্যবহার করতে পারেন।
ডাউনলোড করতে এবং ব্যবহার করতে নিম্নলিখিত লিঙ্কটি দেখুন: http://iramdisk.findmysoft.com/mac/