Kaynaktan VEYA Araçlardan Linux'ta Python oluşturma

Giriş

Bu kılavuzda, Linux'ta Python desteğiyle kaynak VEYA Araçları'ndan nasıl derleme yapılacağı açıklanmaktadır.

Kaynak kodunu değiştirmeyi veya OR-Tools ile bir üçüncü taraf çözücü kullanmayı planlamıyorsanız paket yüklemesini öneririz.

Bu talimatlar diğer Linux varyantlarında da çalışabilir, ancak talimatları yalnızca aşağıdaki gereksinimleri karşılayan makinelerde test ettik:

  • Alpine Edge 64 bit (x86_64)
  • Centos 7 LTS 64 bit (x86_64)
  • Debian SID 64 bit (x86_64)
  • Debian 11 (bullseye) 64 bit (x86_64)
  • Fedora 38 64 bit (x86_64)
  • Fedora 37 64 bit (x86_64)
  • OpenSuse Leap 64 bit (x86_64)
  • Ubuntu 24.04 64 bit (x86_64)
  • Ubuntu 22.04 LTS 64 bit (x86_64)
  • Ubuntu 20.04 LTS 64 bit (x86_64)

Ön koşullar

Aşağıdaki bölümlerde VEYA Araçları'nı yüklemeye ilişkin ön koşullar açıklanmaktadır.

C++ araçları

C++ araçlarını yüklemek için bir terminal penceresi açın ve şunu girin:

Alpine

apk add alpine-sdk linux-headers cmake lsb-release-minimal

Centos

sudo yum groupinstall -y 'Development Tools'
sudo yum install -y pkgconfig redhat-lsb-core

Debian

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

Fötr şapka

sudo dnf groupinstall -y 'Development Tools'
sudo dnf install -y gcc-c++ cmake redhat-lsb-core

Fötr şapka

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

GEÇERLİ

SWIG'ı yüklemek için bir terminal penceresi açın ve şunu girin:

Alpine

apk add swig

Centos

sudo yum install -y swig

Debian

sudo apt install -y swig

Fötr şapka

sudo dnf install -y swig

Fötr şapka

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

Python

Python 3.8 veya sonraki bir sürüm yüklü olmalıdır.

Python 3.8 ve sonraki sürümleri yüklemek için bir terminal penceresi açın ve şunu girin:

Alpine

apk add python3-dev py3-pip py3-wheel

Centos

sudo yum install -y python3 python3-devel python3-pip numpy

Debian

sudo apt install -y python3-dev python3-pip python3-venv

Fötr şapka

sudo dnf install -y python3-devel python3-pip python3-venv

Fötr şapka

sudo dnf install -y python3-devel python3-pip python3-venv

OpenSUSE

sudo zypper install -y python3-devel python3-pip python3-wheel

Ubuntu

sudo apt install -y python3-dev python3-pip python3-venv

Ubuntu

sudo apt install -y python3-dev python3-pip python3-venv

Ubuntu

sudo apt install -y python3-dev python3-pip python3-venv

Python 3 yüklemenizi aşağıdakileri kullanarak kontrol edebilirsiniz:

python3 --version
python3 -c "import platform; print(platform.architecture()[0])"
python3 -m pip --version

Kaynak kodu indirme

GitHub'da OR-Tools kaynak kodunun iki ayrı dalı vardır: stable ve main.

stable dalı kapsamlı bir şekilde test edilmiş olup desteklenen tüm platformlarda sorunsuz bir şekilde çalışacaktır.
main dalı, en son güncellemelerin ve iyileştirmelerin uygulandığı yerdir; daha güncel ancak daha az kararlıdır.

Kararlı kaynak kodunu indirin

OR-Tools için kararlı kaynak kodunu aşağıdaki yöntemlerden biriyle alabilirsiniz:

  • Aşağıdakileri girerek stable dalını klonlayın:

    git clone https://github.com/google/or-tools
    
  • En son sürümü sıkıştırılmış bir dosyada indirmek için GitHub'daki Clone or download düğmesini tıklayın.klon veya indir düğmesinin resmi

Ana kaynak kodunu indirin

main dalından kaynak kodunu almak için şunu girin:

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

Önceki sürümleri indir

Önceki sürümlerin kaynak kodunu aşağıdaki yöntemlerden biriyle alabilirsiniz:

  • GitHub sürüm sayfasından önceki bir sürümü indirin.
  • Daha önce yerel bir depo oluşturduğunuzu varsayarsak (git clone tarafından), Git etiketi kullanarak belirli bir sürüme göz atabilirsiniz. Örneğin, main dalı yerine v9.10 sürümüyle çalışmak için yerel deponuza aşağıdaki komutları girin:

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

Derlemeyi yapılandırma

OR araçları derlemeden önce, CMake derleme sistemi oluşturma aracını yapılandırmanız gerekir.

Bir terminal penceresi açın ve dosyaları çıkardığınız dizine gidin. Ardından şu komutu girin:

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

Ayrıntılar için CMake dokümanlarına göz atın.

SCIP kullanma

SCIP 7.8 sürümünden itibaren artık entegre edilmiştir; bu sayede manuel olarak yüklemeniz gerekmez.

Gurobi'yi kullanma

Gurobi artık önceden entegre edildi. Gerektiğinde, OR-Tools çalışma zamanında MAC OS X ve Windows'daki Gurobi yükleyicilerinin varsayılan yükleme yolunda veya GUROBI_HOME ortam değişkenini kullanarak Gurobi paylaşılan kitaplığını arar.

İsteğe bağlı üçüncü taraf MIP çözücü kullanma

VEYA Araçları'nı, desteği varsayılan olarak devre dışı olan aşağıdaki isteğe bağlı üçüncü taraf MIP çözümlerinden biriyle de kullanabilirsiniz:

Ayrıntılar için lütfen bu belgelere göz atın.

Kaynak kodunu oluşturma

Kaynak kodunu oluşturmak için bir terminal penceresi açın ve dosyaları çıkardığınız dizine gidin. Ardından VEYA Araçları'nı derlemek için aşağıdaki komutu girin:

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

Ayrıntılar için CMake dokümanlarına göz atın.

Kaynak kodu test etme

Aşağıdakileri girerek her şeyin düzgün çalışıp çalışmadığını kontrol edebilirsiniz:

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

Bu komut, VEYA Araçları ile ilgili örnekleri çalıştırır. Tüm örnekler başarıyla çalışırsa VEYA Araçları'nı kullanmaya hazırsınız demektir.

Derleme dosyalarını temizleme

OR-Tools'u yeniden yüklemeniz gerekirse komut:

rm -r build

işlevi, derlenen tüm bağımlılıkları kaldırır. Bu, cihazı temiz bir duruma sıfırlamak için yararlı olabilir.

Daha sonra komutları tekrar girin:

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

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

OR-Tools'u işletim sisteminize yükleme

Aşağıdakileri girerek işletim sisteminize Python için OR-Araçlar'ı yükleyebilirsiniz:

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