الإنشاء من المصدر OR-أدوات Java على نظام التشغيل Linux

مقدمة

يشرح هذا الدليل كيفية الإنشاء من المصدر OR-أدوات، مع دعم لغة Java، على نظام التشغيل Linux.

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

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

  • Alpine Edge 64-bit (x86_64)
  • Centos 7 LTS 64 بت (x86_64)
  • Debian SID 64 بت (x86_64)
  • Debian 11 (مركز الهدف) 64 بت (x86_64)
  • Fedora 38 64 بت (x86_64)
  • Fedora 37 64 بت (x86_64)
  • OpenSuse Leap 64-bit (x86_64)
  • Ubuntu 24.04 64 بت (x86_64)
  • Ubuntu 22.04 LTS 64 بت (x86_64)
  • Ubuntu 20.04 LTS 64 بت (x86_64)

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

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

أدوات C++

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

Alpine

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

Ubuntu

sudo apt update
sudo apt install -y build-essential cmake lsb-release

Ubuntu

sudo apt update
sudo apt install -y build-essential cmake lsb-release

Ubuntu

sudo apt update
sudo apt install -y build-essential cmake lsb-release

SWIG

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

Alpine

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

Ubuntu

sudo apt install -y swig

Ubuntu

sudo apt install -y swig

Ubuntu

sudo apt install -y swig

Java JDK >= 8.0

لتثبيت الإصدار 8.0 من Java JDK أو إصدار أحدث، افتح نافذة طرفية وأدخِل ما يلي:

Alpine

sudo apk add openjdk8
export JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk

سينتوس

sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel

نظام التشغيل دبيان

sudo apt install -y default-jdk
export JAVA_HOME=/usr/lib/jvm/default-java

قبعة فيدورا

sudo dnf install -y java-openjdk java-openjdk-devel

قبعة فيدورا

sudo dnf install -y java-openjdk java-openjdk-devel

OpenSUSE

sudo zypper install -y java-1_8_0-openjdk java-1_8_0-openjdk-devel

Ubuntu

sudo apt install -y default-jdk

Ubuntu

sudo apt install -y default-jdk

Ubuntu

sudo apt install -y default-jdk

Maven >= 3.3

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

Alpine

sudo apk add maven

سينتوس

sudo yum install -y maven

نظام التشغيل دبيان

sudo apt install -y maven

قبعة فيدورا

sudo dnf install -y maven

قبعة فيدورا

sudo dnf install -y maven

OpenSUSE

sudo zypper install -y maven

Ubuntu

sudo apt install -y maven

Ubuntu

sudo apt install -y maven

Ubuntu

sudo apt install -y maven

يمكنك اختبار تثبيت Maven بشكل صحيح والعثور على جافا باستخدام الأمر التالي:

mvn -v

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

يوجد فرعان مختلفان لرمز المصدر 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 علامة. على سبيل المثال، للعمل مع الإصدار 9.10 بدلاً من فرع main، أدخِل الأوامر التالية في المستودع المحلي:

    git fetch --all --tags --prune
    git checkout tags/v9.10 -b v9.10
    

ضبط الإصدار

قبل إنشاء OR-Tools، ينبغي تهيئة نظام إنشاء CMake منشئ المحتوى.

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

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

الاطّلاع على مستندات CMake لمزيد من التفاصيل.

استخدام SCIP

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

استخدام Gurobi

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

.

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

يمكنك أيضًا استخدام أدوات OR مع أي من عناصر MIP الاختيارية التالية والتابعة لجهات خارجية أدوات الحلّ التي يكون دعمها غير مفعَّل تلقائيًا:

يُرجى إلقاء نظرة على هذه المستندات لمزيد من التفاصيل.

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

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

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

الاطّلاع على مستندات CMake لمزيد من التفاصيل.

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

يمكنك التحقّق من سير كل الأمور بشكل صحيح من خلال إدخال ما يلي:

cmake --build build --config Release --target test -v

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

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

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

rm -r build

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

بعد ذلك، أعِد إدخال الطلبات:

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

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

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

يمكنك تثبيت OR-أدوات لـ Java على نظام التشغيل الخاص بك عن طريق إدخال:

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