ভূমিকা
এই নির্দেশিকাটি লিনাক্সে পাইথনের সমর্থন সহ উৎস OR-Tools থেকে কীভাবে তৈরি করা যায় তা ব্যাখ্যা করে।
আপনি যদি সোর্স কোড পরিবর্তন করার পরিকল্পনা না করেন বা OR-Tools সহ একটি তৃতীয়-পক্ষ সমাধানকারী ব্যবহার করেন, আমরা প্যাকেজ ইনস্টলেশনের সুপারিশ করি।
যদিও এই নির্দেশাবলী অন্যান্য লিনাক্স ভেরিয়েন্টগুলিতেও কাজ করতে পারে, আমরা শুধুমাত্র নিম্নলিখিত প্রয়োজনীয়তাগুলি পূরণকারী মেশিনগুলিতে সেগুলি পরীক্ষা করেছি:
- আলপাইন এজ 64-বিট (x86_64)
- Centos 7 LTS 64-বিট (x86_64)
- ডেবিয়ান SID 64-বিট (x86_64)
- ডেবিয়ান 11 (বুলসি) 64-বিট (x86_64)
- ফেডোরা 38 64-বিট (x86_64)
- ফেডোরা 37 64-বিট (x86_64)
- OpenSuse লিপ 64-বিট (x86_64)
- উবুন্টু 24.04 64-বিট (x86_64)
- উবুন্টু 22.04 LTS 64-বিট (x86_64)
- উবুন্টু 20.04 LTS 64-বিট (x86_64)
পূর্বশর্ত
নিম্নলিখিত বিভাগগুলি OR-Tools ইনস্টল করার পূর্বশর্তগুলি বর্ণনা করে৷
C++ টুল
C++ টুল ইনস্টল করতে, একটি টার্মিনাল উইন্ডো খুলুন এবং লিখুন:
আলপাইন
apk add alpine-sdk linux-headers cmake lsb-release-minimal
সেন্টোস
sudo yum groupinstall -y 'Development Tools'
sudo yum install -y pkgconfig redhat-lsb-core
ডেবিয়ান
sudo apt update
sudo apt install -y build-essential cmake lsb-release
ফেডোরা
sudo dnf groupinstall -y 'Development Tools'
sudo dnf install -y gcc-c++ cmake redhat-lsb-core
ফেডোরা
sudo dnf groupinstall -y 'Development Tools'
sudo dnf install -y gcc-c++ cmake redhat-lsb-core
OpenSUSE
sudo zypper refresh
sudo zypper install -y git gcc11 gcc11-c++ lsb-release
উবুন্টু
sudo apt update
sudo apt install -y build-essential cmake lsb-release
উবুন্টু
sudo apt update
sudo apt install -y build-essential cmake lsb-release
উবুন্টু
sudo apt update
sudo apt install -y build-essential cmake lsb-release
SWIG
SWIG ইনস্টল করতে, একটি টার্মিনাল উইন্ডো খুলুন এবং লিখুন:
আলপাইন
apk add swig
সেন্টোস
sudo yum install -y swig
ডেবিয়ান
sudo apt install -y swig
ফেডোরা
sudo dnf install -y swig
ফেডোরা
sudo dnf install -y swig
OpenSUSE
sudo zypper install -y swig
উবুন্টু
sudo apt install -y swig
উবুন্টু
sudo apt install -y swig
উবুন্টু
sudo apt install -y swig
পাইথন
আপনার অবশ্যই পাইথন 3.8+ ইনস্টল থাকতে হবে।
পাইথন 3.8+ ইনস্টল করতে, একটি টার্মিনাল উইন্ডো খুলুন এবং লিখুন:
আলপাইন
apk add python3-dev py3-pip py3-wheel
সেন্টোস
sudo yum install -y python3 python3-devel python3-pip numpy
ডেবিয়ান
sudo apt install -y python3-dev python3-pip python3-venv
ফেডোরা
sudo dnf install -y python3-devel python3-pip python3-venv
ফেডোরা
sudo dnf install -y python3-devel python3-pip python3-venv
OpenSUSE
sudo zypper install -y python3-devel python3-pip python3-wheel
উবুন্টু
sudo apt install -y python3-dev python3-pip python3-venv
উবুন্টু
sudo apt install -y python3-dev python3-pip python3-venv
উবুন্টু
sudo apt install -y python3-dev python3-pip python3-venv
আপনি ব্যবহার করে আপনার Python 3 ইনস্টলেশন পরীক্ষা করতে পারেন:
python3 --version
python3 -c "import platform; print(platform.architecture()[0])"
python3 -m pip --version
সোর্স কোড ডাউনলোড করুন
GitHub- এ OR-Tools সোর্স কোডের দুটি স্বতন্ত্র শাখা রয়েছে: stable
এবং main
।
stable
শাখাটি পুঙ্খানুপুঙ্খভাবে পরীক্ষা করা হয়েছে এবং সমস্ত সমর্থিত প্ল্যাটফর্মে ত্রুটিহীনভাবে কাজ করা উচিত।
main
শাখা যেখানে সর্বশেষ আপডেট এবং উন্নতি প্রয়োগ করা হয়েছে; এটা আরো বর্তমান, কিন্তু কম স্থিতিশীল.
স্থিতিশীল উৎস কোড ডাউনলোড করুন
আপনি নিম্নলিখিত যে কোনও উপায়ে OR-Tools-এর জন্য স্থিতিশীল সোর্স কোড পেতে পারেন:
প্রবেশ করে
stable
শাখা ক্লোন করুন:git clone https://github.com/google/or-tools
GitHub- এ
Clone or download
বোতামে ক্লিক করে একটি সংকুচিত ফাইলে সর্বশেষ রিলিজ ডাউনলোড করুন।
প্রধান উৎস কোড ডাউনলোড করুন
main
শাখা থেকে উৎস কোড পুনরুদ্ধার করতে, লিখুন:
git clone -b main https://github.com/google/or-tools
আগের রিলিজ ডাউনলোড করুন
আপনি নিম্নলিখিত যেকোনো উপায়ে পূর্ববর্তী রিলিজের জন্য সোর্স কোড পেতে পারেন:
- GitHub রিলিজ পৃষ্ঠা থেকে একটি পূর্ববর্তী রিলিজ ডাউনলোড করুন।
ধরে নিচ্ছি আপনি ইতিমধ্যে একটি স্থানীয় সংগ্রহস্থল তৈরি করেছেন (
git clone
দ্বারা), আপনি একটি গিট ট্যাগ ব্যবহার করে একটি নির্দিষ্ট রিলিজ পরীক্ষা করতে পারেন। উদাহরণস্বরূপ,main
শাখার পরিবর্তে v9.10 রিলিজের সাথে কাজ করতে, আপনার স্থানীয় রেপোতে নিম্নলিখিত কমান্ডগুলি লিখুন:git fetch --all --tags --prune
git checkout tags/v9.10 -b v9.10
বিল্ড কনফিগার করুন
OR-Tools তৈরি করার আগে, আপনাকে CMake বিল্ড সিস্টেম জেনারেটর কনফিগার করতে হবে।
একটি টার্মিনাল খুলুন এবং ডিরেক্টরিতে নেভিগেট করুন যেখানে আপনি ফাইলগুলি বের করেছেন। তারপর লিখুন:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_PYTHON=ON
বিস্তারিত জানার জন্য CMake ডকুমেন্টেশন চেকআউট করুন.
SCIP ব্যবহার করে
v7.8 থেকে, SCIP এখন ইন্টিগ্রেটেড তাই আপনাকে ম্যানুয়ালি ইন্সটল করতে হবে না।
গুরোবি ব্যবহার করে
গুরোবি এখন প্রাক-সংহত। প্রয়োজন হলে, রানটাইমে, OR-Tools MAC OS X এবং Windows-এ গুরোবি ইনস্টলারদের ডিফল্ট ইনস্টল পাথে গুরোবি শেয়ার্ড লাইব্রেরি অনুসন্ধান করবে, অথবা GUROBI_HOME
এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করে।
একটি ঐচ্ছিক তৃতীয় পক্ষের MIP সমাধানকারী ব্যবহার করা
এছাড়াও আপনি OR-Tools ব্যবহার করতে পারেন নিম্নোক্ত ঐচ্ছিক তৃতীয় পক্ষের MIP সলিভারগুলির সাথে যার সমর্থন ডিফল্টরূপে অক্ষম থাকে:
- CPLEX
- GLPK (শুধুমাত্র লিনাক্স এবং ম্যাকওএস)
- XPRESS সমাধানকারী
বিস্তারিত জানার জন্য এই ডকুমেন্টেশন কটাক্ষপাত করুন.
সোর্স কোড তৈরি করুন
সোর্স কোড তৈরি করতে, একটি টার্মিনাল খুলুন এবং যে ডিরেক্টরিতে আপনি ফাইলগুলি বের করেছেন সেখানে নেভিগেট করুন। তারপর OR-Tools কম্পাইল করতে নিম্নলিখিত কমান্ডটি প্রবেশ করান:
cmake --build build --config Release --target all -j -v
বিস্তারিত জানার জন্য CMake ডকুমেন্টেশন চেকআউট করুন.
সোর্স কোড পরীক্ষা করুন
আপনি প্রবেশ করে সবকিছু সঠিকভাবে চলছে কিনা তা পরীক্ষা করতে পারেন:
cmake --build build --config Release --target test -v
এটি OR-Tools-এর উদাহরণ চালায়। যদি সমস্ত উদাহরণ সফলভাবে চালানো হয়, আপনি OR-Tools দিয়ে শুরু করতে প্রস্তুত।
বিল্ড ফাইল পরিষ্কার করা
আপনার যদি OR-Tools পুনরায় ইনস্টল করার প্রয়োজন হয়, কমান্ডটি:
rm -r build
সমস্ত সংকলিত নির্ভরতা মুছে ফেলবে। এটি একটি পরিষ্কার অবস্থায় পুনরায় সেট করার জন্য দরকারী হতে পারে।
তারপর কমান্ডগুলি পুনরায় লিখুন:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_PYTHON=ON
cmake --build build --config Release --target all -j -v
আপনার অপারেটিং সিস্টেমে OR-Tools ইনস্টল করা হচ্ছে
আপনি প্রবেশ করে আপনার অপারেটিং সিস্টেমে পাইথনের জন্য OR-Tools ইনস্টল করতে পারেন:
cmake --build build --config Release --target install -v