গুগল ব্ল্যাক সম্প্রদায়ের জন্য জাতিগত ইকুইটি আগুয়ান করতে প্রতিশ্রুতিবদ্ধ হয়। দেখ কিভাবে.
This page was translated by the Cloud Translation API.
Switch to English

OpenThread বিল্ড

Toolchains

OpenThread নির্মাণের জন্য প্রাথমিক সমর্থিত টুলচেইন গনুহ Autotools হয়।

গনুহ Autotools

গনুহ Autotools সঙ্গে উদাহরণ নির্মাণের নির্দেশনা প্রতিটি উদাহরণ খুঁজে পাওয়া যেতে পারে প্ল্যাটফর্ম ফোল্ডারের । মনে রাখবেন যে, এই উদাহরণ অভিপ্রায় ন্যূনতম কোড প্রতিটি নিজ নিজ প্ল্যাটফর্মে OpenThread চালানোর জন্য প্রয়োজনীয় প্রদর্শন করা হয়। যেমন, তারা প্ল্যাটফর্ম এর পূর্ণ ক্ষমতা হাইলাইট না।

আরও কনফিগারেশন সময় তৈরী করে আপনার ব্যবহার কেস উপর নির্ভর করে প্রয়োজনীয় হতে পারে,।

গনুহ Autotools - নেস্ট ল্যাবস বিল্ড

নেস্ট ল্যাবস একটি কাস্টমাইজড, কারাপরিদর্শক বিল্ড সিস্টেম ফ্রেমওয়ার্ক, গনুহ Autotools উপর ভিত্তি করে তৈরি করেছে। এই স্বতন্ত্র সফটওয়্যার প্যাকেজ জন্য ব্যবহার করা হয় যে সমর্থন করা প্রয়োজন:

  • উপর বিল্ডিং এবং স্বতন্ত্র বিল্ড হোস্ট সিস্টেম বিরুদ্ধে লক্ষ্য করে
  • এম্বেড করা লক্ষ্য সিস্টেম জিসিসি-ভিত্তিক বা -compatible toolchains ব্যবহার

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

এই প্রকল্পটি সাধারণত subtreed (বা Git submoduled) একটি লক্ষ্য প্রকল্পের সংগ্রহস্থলের মধ্যে এবং যে প্রকল্পের বিল্ড সিস্টেমের জন্য বীজ হিসেবে কাজ করে।

আরও জানার জন্য, অথবা আপনার OpenThread তৈরী করে এই টুল ব্যবহার করার জন্য, দেখুন README

OpenThread বিল্ড করবেন

বিল্ড OpenThread করার জন্য পদক্ষেপ টুলচেইন, ব্যবহারকারী মেশিন, এবং লক্ষ্য প্ল্যাটফর্মের উপর নির্ভর করে।

সবচেয়ে সাধারণ কর্মপ্রবাহ হল:

  1. বিল্ড পরিবেশ সেট আপ করুন এবং পছন্দসই টুলচেইন ইনস্টল:
    1. একটি মেশিন সরাসরি নির্মাণ করতে, দেখতে সিমুলেশন Codelab বিস্তারিত নির্দেশাবলীর জন্য
    2. OpenThread পরিচালিত একটি প্রাক কনফিগার পরিবেশ, ডাউনলোড সঙ্গে একটি Docker ধারক ব্যবহার এবং environment ছবি:
       docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash 
  2. আপনার নির্বাচিত পরিবেশের মধ্যে, ক্লোন OpenThread গীত সংগ্রহস্থলের:
     git clone https://github.com/openthread/openthread 
  3. ক্লোন করা সংগ্রহস্থলের এর রুট ডিরেক্টরি থেকে:
    1. গনুহ টুলচেইন এবং অন্যান্য নির্ভরতা (ঐচ্ছিক) ইনস্টল করুন:
       ./script/bootstrap 
    2. পরিবেশ সেট আপ করুন:
       ./bootstrap 
    3. কনফিগর করুন এবং বিল্ড, সাধারণ সুইচ মাধ্যমে ঐচ্ছিক স্বনির্ধারণ সঙ্গে প্রাক সংজ্ঞায়িত প্ল্যাটফর্ম উদাহরণ ব্যবহার করছে:
      1. নির্বাচিত প্ল্যাটফর্ম এর পরিবর্তন OpenThread কম্পাইল-টাইম ধ্রুবক /examples/platforms/ <platform> /openthread-core- <platform> -config.h ফাইল
      2. কনফিগারেশন তৈরি করুন:
         make -f examples/Makefile- <platform> <switches> 
  4. লক্ষ্য প্ল্যাটফর্ম আকাঙ্ক্ষিত বাইনারি ফ্লাশ দিন। সকল উত্পন্ন বাইনেরিতে মধ্যে অবস্থিত হয় /output/ <platform> /bin । উন্নত মোড ব্যবহারের সময় <platform> ব্যবহারকারীর মেশিনে নির্দিষ্ট করা যেতে পারে। উদাহরণস্বরূপ, x86_64-apple-darwin

গনুহ Autotools সমর্থিত প্ল্যাটফর্ম নির্মাণের বিষয়ে সুনির্দিষ্ট নির্দেশনা প্রতিটি উদাহরণ খুঁজে পাওয়া যেতে পারে প্ল্যাটফর্ম ফোল্ডারের

কনফিগারেশন

আপনি নির্মাণ প্রক্রিয়ার সময় বিভিন্ন কার্যকারিতা এবং আচরণের জন্য OpenThread কনফিগার করতে পারেন। উপলব্ধ কনফিগারেশন অপশন নিম্নলিখিত অবস্থানগুলি এ বিস্তারিত রয়েছে:

আদর্শ অবস্থান
কম্পাইল-টাইম ধ্রুবক সব হেডার ফাইলের মধ্যে তালিকাভুক্ত মধ্যে /src/core/config
Makefile নামক বিল্ড সুইচ তালিকাভুক্ত /examples/common-switches.mk

উদাহরণ বিল্ড

একটি উদাহরণ প্ল্যাটফর্মের জন্য কার্যকারিতা সক্ষম করার জন্য একটি সুইচ ব্যবহার করুন। উদাহরণস্বরূপ, CC2538 উদাহরণ গড়ে তুলতে কমিশনার ও যোজক সমর্থন সক্রিয় সঙ্গে

 make -f examples/Makefile-cc2538 COMMISSIONER=1 JOINER=1 

অথবা, nRF52840 উদাহরণ গড়ে তুলতে সঙ্গে জ্যাম সনাক্তকরণ বৈশিষ্ট্য সক্ষমিত:

 make -f examples/Makefile-nrf52840 JAM_DETECTION=1 

বাইনারি

নিম্নলিখিত বাইনেরিতে তৈরি হয় /output/ <platform> /bin বিল্ড প্রক্রিয়া থেকে। কোনটিতে বাইনেরিতে সঙ্গে তৈরি হয়, ব্যবহার কনফিগার বিকল্প পতাকা ./configure কমান্ড একটি আপডেট জেনারেট করতে Makefile নির্মাণের জন্য। উদাহরণস্বরূপ, OpenThread গড়ে তুলতে এবং শুধুমাত্র CLI বাইনেরিতে জেনারেট করতে:

 ./configure --enable-cli
make 
বাইনারি বিবরণ কনফিগার বিকল্প পতাকা
ot-cli-ftd SoC ডিজাইন এর জন্য পূর্ণ থ্রেড ডিভাইস --enable-cli
--enable-ftd
ot-cli-mtd SoC ডিজাইন জন্য সংক্ষিপ্ত থ্রেড ডিভাইস --enable-cli
--enable-mtd
ot-ncp-ftd এনসিপি ডিজাইন এর জন্য পূর্ণ থ্রেড ডিভাইস --enable-ncp
--enable-ftd
ot-ncp-mtd এনসিপি ডিজাইন জন্য সংক্ষিপ্ত থ্রেড ডিভাইস --enable-ncp
--enable-mtd
ot-rcp হোস্ট / 802.15.4 কন্ট্রোলার নকশা --enable-ncp
--enable-radio-only

তাহলে তন্ন তন্ন এই পতাকার কিংবা একটি প্ল্যাটফর্ম উদাহরণ ব্যবহার করা হয় না, অ্যাপ্লিকেশন নির্মিত নেই কিন্তু OpenThread গ্রন্থাগার ফাইল এখনও তৈরি হয় /output/ <platform> /lib একটি প্রকল্পে ব্যবহারের জন্য।

প্রতিটি প্ল্যাটফর্মের জন্য উদাহরণ ফাইল তৈরী চেক করুন যা পতাকার প্রতিটি প্ল্যাটফর্ম সমর্থন দেখতে। উদাহরণস্বরূপ, টিআইবি CC2650 FTDs সমর্থন করে না । FTDs এবং এমটিডিএস সম্পর্কে আরো তথ্যের জন্য, দেখুন থ্রেড প্রাইমার । SoC এবং এনসিপি ডিজাইন সম্পর্কে আরো তথ্যের জন্য, দেখুন প্ল্যাটফর্ম

প্রক্রিয়া এই বাইনেরিতে ফ্ল্যাশ উদাহরণ প্ল্যাটফর্ম জুড়ে পরিবর্তিত হয়। প্রতিটি প্ল্যাটফর্ম এর READMEs দেখুন উদাহরণ ফোল্ডারের বিস্তারিত নির্দেশাবলীর জন্য।

সাপোর্ট প্যাকেজ নির্মাণ

সাপোর্ট বিল্ড প্যাকেজ (BSPs) পাওয়া যায় /third_party । BSPs প্রতিটি নিজ নিজ প্ল্যাটফর্মে OpenThread দ্বারা ব্যবহৃত অতিরিক্ত তৃতীয় পক্ষের কোড হয়, সাধারণত যখন অন্তর্ভুক্ত OpenThread porting একটি নতুন হার্ডওয়্যার প্ল্যাটফর্ম।