Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

ওপেনথ্রেড তৈরি করুন

সরঞ্জামচেনা

ওপেনথ্রেড নির্মাণের জন্য প্রাথমিক সমর্থিত সরঞ্জামচয়ন হ'ল জিএনইউ অটোটুলস।

জিএনইউ অটোটুলস

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

বিল্ডগুলির সময় পরবর্তী কনফিগারেশন আপনার ব্যবহারের ক্ষেত্রে নির্ভর করে প্রয়োজনীয় হতে পারে।

জিএনইউ অটোটুলস - নেস্ট ল্যাবগুলি তৈরি

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

  • স্বতন্ত্র বিল্ড হোস্ট সিস্টেমের বিরুদ্ধে বিল্ডিং এবং লক্ষ্যবস্তু
  • জিসিসি-ভিত্তিক বা-সামঞ্জস্যপূর্ণ সরঞ্জামচেনগুলি ব্যবহার করে এম্বেড করা টার্গেট সিস্টেমগুলি

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

এই প্রকল্পটি সাধারণত একটি টার্গেট প্রকল্পের ভাণ্ডারে সাবট্রাইড করা হয় (বা গিটটি সাবমোডুলেড করা হয়) এবং সেই প্রকল্পের বিল্ড সিস্টেমের বীজ হিসাবে কাজ করে।

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

কীভাবে ওপেনথ্রেড তৈরি করবেন

টুলচেন, ব্যবহারকারী মেশিন এবং লক্ষ্য প্ল্যাটফর্মের উপর নির্ভর করে ওপেনথ্রেড তৈরির পদক্ষেপগুলি পৃথক হয়।

সর্বাধিক সাধারণ কর্মপ্রবাহ হ'ল:

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

জিএনইউ অটোটুলগুলি সহ সমর্থিত প্ল্যাটফর্মগুলি তৈরির বিষয়ে নির্দিষ্ট নির্দেশাবলী প্রতিটি উদাহরণের প্ল্যাটফর্ম ফোল্ডারে পাওয়া যাবে।

কনফিগারেশন

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

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

উদাহরণ তৈরি করুন

উদাহরণস্বরূপ প্ল্যাটফর্মের জন্য কার্যকারিতা সক্ষম করতে একটি স্যুইচ ব্যবহার করুন। উদাহরণস্বরূপ, কমিশনার এবং জেন্ডার সমর্থন সক্ষম সহ সিসি 2538 উদাহরণ তৈরি করতে:

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

অথবা, জাম ডিটেকশন বৈশিষ্ট্যটি সক্ষম করে এনআরএফ 52840 উদাহরণ তৈরি করতে:

make -f examples/Makefile-nrf52840 JAM_DETECTION=1

বাইনারি

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

./configure --enable-cli
make
বাইনারি বর্ণনা বিকল্পের পতাকাগুলি কনফিগার করুন
ot-cli-ftd এসসি ডিজাইনের জন্য সম্পূর্ণ থ্রেড ডিভাইস --enable-cli
--enable-ftd
ot-cli-mtd এসসি ডিজাইনের জন্য ন্যূনতম থ্রেড ডিভাইস --enable-cli
--enable-mtd
ot-ncp-ftd নেটওয়ার্ক কো-প্রসেসর (এনসিপি) ডিজাইনের জন্য সম্পূর্ণ থ্রেড ডিভাইস --enable-ncp
--enable-ftd
ot-ncp-mtd এনসিপি ডিজাইনের জন্য ন্যূনতম থ্রেড ডিভাইস --enable-ncp
--enable-mtd
ot-rcp রেডিও কো-প্রসেসর (আরসিপি) ডিজাইন --enable-ncp
--enable-radio-only

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

প্রতিটি প্ল্যাটফর্মটি কোন ফ্ল্যাগ সমর্থন করে তা দেখতে প্রতিটি প্ল্যাটফর্মের জন্য মেকফিলগুলি উদাহরণ দেখুন। উদাহরণস্বরূপ, টিআই সিসি 2650 এফটিডিগুলিকে সমর্থন করে না । এফটিডি এবং এমটিডি সম্পর্কে আরও তথ্যের জন্য, থ্রেড প্রাইমারটি দেখুন । এসওসি এবং এনসিপি ডিজাইন সম্পর্কিত আরও তথ্যের জন্য, প্ল্যাটফর্মগুলি দেখুন

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

ওপেনথ্রেড ডেমন

ওপেনথ্রেড ডেমন (ওটি ডিমন) ওপেনথ্রেড পসিক্স বিল্ড মোড যা ওপেনথ্রেডকে পরিষেবা হিসাবে চালায় এবং আরসিপি ডিজাইনের সাহায্যে ব্যবহার করা হয়। কীভাবে এটি তৈরি এবং ব্যবহার করবেন সে সম্পর্কে আরও তথ্যের জন্য ওপেনথ্রেড ডেমন দেখুন

সমর্থন প্যাকেজ নির্মাণ করুন

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