সিএমকে দিয়ে এটি সাধারণত "উত্সের বাইরে" বিল্ড করার পরামর্শ দেওয়া হয় । CMakeLists.txt
আপনার প্রকল্পের মূলে আপনার তৈরি করুন । তারপরে আপনার প্রকল্পের মূল থেকে:
mkdir Release
cd Release
cmake -DCMAKE_BUILD_TYPE=Release ..
make
এবং এর জন্য Debug
(আবার আপনার প্রকল্পের মূল থেকে):
mkdir Debug
cd Debug
cmake -DCMAKE_BUILD_TYPE=Debug ..
make
Release
/ Debug
আপনার সংকলকটির জন্য উপযুক্ত পতাকা যুক্ত করবে। এছাড়াও আছে RelWithDebInfo
এবং MinSizeRel
কনফিগারেশন বিল্ড।
আপনি একটি টুলচেন ফাইল নির্দিষ্ট করে ফ্ল্যাগগুলিতে সংশোধন / যুক্ত করতে পারেন যাতে আপনি যুক্ত করতে পারেন CMAKE_C_FLAGS_DEBUG
এবং CMAKE_C_FLAGS_RELEASE
ভেরিয়েবলগুলি, যেমন:
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wall")
আরও তথ্যের জন্য CMAKE_BUILD_TYPE দেখুন ।
আপনার তৃতীয় প্রশ্ন হিসাবে, আমি নিশ্চিত না আপনি ঠিক কী জিজ্ঞাসা করছেন। সিএমকে আপনার আলাদা উত্স ফাইলগুলির জন্য উপযুক্তভাবে সংকলকটি সনাক্ত এবং ব্যবহার করা উচিত।
cmake -i ..
পরিবর্তে এটিও করতে পারেন , সুতরাং আপনি কোন ধরণের বিল্ড চান তা জিজ্ঞাসা করে (কুমিল্লা, রিলিজ, ডিবাগ, মিনিসাইজারেল, রিলওথথইবআইএনফো) কোনভাবে ইন্টারেক্টিভভাবে চালানো হবে ma