إنشاء من المصدر OR-Tools .Net على نظام التشغيل MacOS

مقدمة

يشرح هذا الدليل كيفية الإنشاء باستخدام المصدر OR-أدوات، مع التوافق مع .Net، على نظام التشغيل MacOS.

ننصحك بتثبيت الحزمة ما لم تكن تخطّط لتعديل رمز المصدر أو استخدام أداة حلّ خارجية مع أدوات OR.

على الرغم من أنّ هذه التعليمات قد تعمل أيضًا على إصدارات أخرى من نظام التشغيل MacOS، لم نختبرها إلا على أجهزة تستوفي المتطلبات التالية:

  • نظام التشغيل MacOS 13.0.1 (Ventura) معالج Intel 64 بت (x86_64)
  • MacOS 13.0.1 (Ventura) M1 (arm64)

المتطلبات الأساسية

تصف الأقسام التالية المتطلبات الأساسية لتثبيت أدوات OR.

أدوات سطر أوامر Xcode

عليك تثبيت أدوات سطر الأوامر Xcode. لإجراء ذلك، افتح المحطة الطرفية الموجودة في /Applications/Utilities/، وأدخل:

xcode-select --install

انقر على "تثبيت" لتنزيل أدوات سطر أوامر Xcode وتثبيتها. لن تحتاج إلى "الحصول على Xcode" من App Store. إذا كان اتصال الإنترنت بطيئًا، قد يستغرق الأمر عدة دقائق.

تأكَّد من تثبيت أدوات سطر أوامر Xcode بنجاح:

xcode-select -p

من المفترض أن يظهر لك ما يلي:

/Library/Developer/CommandLineTools

بيرة منزلية

لتثبيت المتطلبات الأساسية المتبقية، ننصحك أولاً بتثبيت "أداة إدارة الحزم غير المتوفّرة لنظام التشغيل macOS" والمعروفة باسم Homebrew. ولإجراء ذلك، افتح نافذة طرفية وأدخِل ما يلي:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew update

للتأكُّد من تثبيت brew بنجاح:

brew --version

من المفترض أن يظهر لك ما يلي:

Homebrew 1.6.9-8-g25542d7
Homebrew/homebrew-core (git revision 0e0c84; last commit 2018-06-20)

أدوات C++

لتثبيت أدوات C++، افتح نافذة طرفية وأدخِل:

brew install cmake wget pkg-config

أداة SWIG

لتثبيت أداة SWIG، افتح نافذة طرفية وأدخِل ما يلي:

brew install swig

.Net 6.0 SDK

يجب تثبيت حزمة .Net 6.0 SDK.

بعد تثبيت Homebrew، يمكنك تثبيت حزمة dotnet-sdk من خلال فتح نافذة طرفية وإدخال:

brew cask install dotnet-sdk

يمكنك اختبار تثبيت dotnet cli بشكل صحيح باستخدام الأمر التالي:

dotnet --info

تنزيل رمز المصدر

هناك فرعين مختلفان لرمز المصدر OR-الأدوات على GitHub: stable وmain.

تم اختبار فرع "stable" بالكامل ومن المفترض أن يعمل خالية من الأخطاء على جميع الأنظمة الأساسية المتوافقة.
فرع main هو المكان الذي تم فيه تطبيق آخر التحديثات والتحسينات. فهو أكثر حداثة، وليس أقل ثباتًا.

تنزيل رمز المصدر الثابت

يمكنك الحصول على رمز المصدر الثابت لـ OR-الأدوات بإحدى الطريقتين التاليتين:

  • استنسِخ فرع stable من خلال إدخال:

    git clone https://github.com/google/or-tools
    
  • يمكنك تنزيل أحدث إصدار في ملف مضغوط، وذلك بالنقر على زر Clone or download في GitHub. صورة نسخة أو زر تنزيل

تنزيل رمز المصدر الرئيسي

لاسترداد رمز المصدر من فرع main، أدخل:

git clone -b main https://github.com/google/or-tools

تنزيل الإصدارات السابقة

يمكنك الحصول على رمز المصدر للإصدارات السابقة بإحدى الطريقتين التاليتين:

  • يمكنك تنزيل إصدار سابق من صفحة إصدار GitHub.
  • لنفترض أنّك أنشأت مستودعًا محليًا (بحلول git clone)، يمكنك الاطّلاع على إصدار معيّن باستخدام علامة Git. على سبيل المثال، لاستخدام الإصدار v9.9 بدلاً من فرع main، أدخِل الأوامر التالية في Repo المحلي:

    git fetch --all --tags --prune
    git checkout tags/v9.9 -v v9.9
    

ضبط الإصدار

قبل إنشاء أدوات OR، ستحتاج إلى إعداد منشئ نظام إصدار CMake.

افتح وحدة طرفية وانتقِل إلى الدليل الذي استخرجت الملفات فيه. ثم أدخِل:

cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_DOTNET=ON

راجِع وثائق CMake للحصول على التفاصيل.

استخدام SCIP

تم دمج SCIP منذ الإصدار 7.8، لذا لن تحتاج إلى تثبيته يدويًا.

استخدام Gurobi

تم دمج Gurobi مسبقًا. عند الحاجة، وفي وقت التشغيل، ستبحث OR-Tools عن مكتبة Gurobi المشتركة في مسار التثبيت التلقائي لأدوات تثبيت Gurobi على نظام التشغيل MAC OS X وWindows، أو باستخدام متغير بيئة GUROBI_HOME.

.

استخدام أداة اختيارية تابعة لجهة خارجية لحل مشاكل MIP

يمكنك أيضًا استخدام "أدوات" أو "أدوات" مع أي من حلول MIP الاختيارية التالية التابعة لجهات خارجية والتي يتم إيقاف دعمها تلقائيًا:

يُرجى الاطّلاع على هذه المستندات للحصول على التفاصيل.

إنشاء رمز المصدر

لإنشاء رمز المصدر، افتح وحدة طرفية وانتقِل إلى الدليل الذي استخرجت فيه الملفات. ثم أدخل الأمر التالي لتجميع OR-الأدوات:

cmake --build build --config Release --target ALL_BUILD -j -v

راجِع وثائق CMake للحصول على التفاصيل.

اختبار رمز المصدر

يمكنك التحقق من أن كل شيء يعمل بشكل صحيح من خلال إدخال:

cmake --build build --config Release --target RUN_TESTS -v

يؤدي هذا إلى تشغيل أمثلة لأدوات OR. إذا تم تشغيل جميع الأمثلة بنجاح، فأنت على استعداد لبدء استخدام OR-أدوات.

تنظيف ملفات الإصدار

إذا كنت بحاجة إلى إعادة تثبيت OR-الأدوات، فإن الأمر:

rm -r build

سيزيل جميع التبعيات المجمّعة. ويمكن الاستفادة من ذلك في إعادة الضبط على الحالة النظيفة.

بعد ذلك، أعِد إدخال الأوامر:

cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_DOTNET=ON

cmake --build build --config Release --target ALL_BUILD -j -v

تثبيت OR-أدوات على نظام التشغيل لديك

يمكنك تثبيت OR-أدوات لـ .Net على نظام التشغيل لديك من خلال إدخال:

cmake --build build --config Release --target install -v