Aus der Quell-OR-Tools .Net unter Linux erstellen

Einführung

In diesem Leitfaden wird erläutert, wie Sie aus der Quelle ODER-Tools mit Unterstützung für .Net unter Linux.

Es sei denn, Sie möchten den Quellcode ändern oder den Rechner eines Drittanbieters mit OR-Tools, empfehlen wir die Paketinstallation.

Auch wenn diese Anleitung auch für andere Linux-Varianten funktioniert, nur auf Computern getestet, die die folgenden Anforderungen erfüllen:

  • Alpine Edge 64-Bit (x86_64)
  • Centos 7 LTS 64-Bit (x86_64)
  • Debian SID 64-Bit (x86_64)
  • Debian 11 (Volltreffer) 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)

Vorbereitung

In den folgenden Abschnitten werden die Voraussetzungen für die Installation von OR-Tools beschrieben.

C++-Tools

Öffnen Sie zum Installieren von C++-Tools ein Terminalfenster und geben Sie Folgendes ein:

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

Fedora

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

Fedora

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

Um SWIG zu installieren, öffne ein Terminalfenster und gib Folgendes ein:

Alpine

apk add swig

Centos

sudo yum install -y swig

Debian

sudo apt install -y swig

Fedora

sudo dnf install -y swig

Fedora

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

.Net Core SDK >= 3.1

Installieren Sie als Nächstes das .Net Core SDK Version 3.1 oder höher. Gehen Sie dazu wie folgt vor: ein Terminalfenster öffnen und Folgendes eingeben:

Alpine

apk add dotnet6-sdk
    

ref: https://learn.microsoft.com/en-us/dotnet/core/install/linux-alpine

Centos

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
sudo yum install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-centos#centos-7
<ph type="x-smartling-placeholder">
</ph>

Debian

Führen Sie vor der Installation von .NET die folgenden Befehle aus, um die Microsoft- Paketsignaturschlüssel zur Liste der vertrauenswürdigen Schlüssel und fügen das Paket hinzu zu erstellen.

wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
sudo apt update
sudo apt install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-debian
<ph type="x-smartling-placeholder">
</ph>

Fedora

sudo dnf install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-fedora
<ph type="x-smartling-placeholder">
</ph>

Fedora

sudo dnf install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-fedora
<ph type="x-smartling-placeholder">
</ph>

OpenSUSE

Führen Sie vor der Installation von .NET die folgenden Befehle aus, um die Microsoft- Paketsignaturschlüssel zur Liste der vertrauenswürdigen Schlüssel und fügen das Paket hinzu zu erstellen.

sudo zypper install libicu
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
wget https://packages.microsoft.com/config/opensuse/15/prod.repo
sudo mv prod.repo /etc/zypp/repos.d/microsoft-prod.repo
sudo chown root:root /etc/zypp/repos.d/microsoft-prod.repo

Anschließend können Sie das .Net SDK mit dem folgenden Befehl installieren:

sudo zypper install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-opensuse
<ph type="x-smartling-placeholder">
</ph>

Ubuntu

sudo apt install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-Ubuntu
<ph type="x-smartling-placeholder">
</ph>

Ubuntu

sudo apt install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-Ubuntu
<ph type="x-smartling-placeholder">
</ph>

Ubuntu

sudo apt install -y dotnet-sdk-6.0
Referenz: https://learn.microsoft.com/de-de/dotnet/core/install/linux-Ubuntu

Quellcode herunterladen

Es gibt zwei verschiedene Zweige des OR-Tools-Quellcodes auf GitHub stable und main.

Der stable-Branch wurde gründlich getestet und sollte bei allen unterstützten Plattformen.
Im Zweig main werden die neuesten Updates und Verbesserungen vorgenommen wurden; zwar aktueller, aber weniger stabil.

Stabilen Quellcode herunterladen

Sie haben folgende Möglichkeiten, den stabilen Quellcode für OR-Tools abzurufen:

  • Klonen Sie den stable-Zweig, indem Sie Folgendes eingeben:

    git clone https://github.com/google/or-tools
    
  • Laden Sie die neueste Version in einer komprimierten Datei herunter. Klicken Sie dazu auf Clone or download-Schaltfläche in GitHub. Bild der Schaltfläche zum Klonen oder Herunterladen

Hauptquellcode herunterladen

Geben Sie Folgendes ein, um den Quellcode aus dem Zweig main abzurufen:

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

Frühere Releases herunterladen

Sie haben folgende Möglichkeiten, den Quellcode für frühere Releases abzurufen:

  • Laden Sie eine frühere Version von der GitHub-Versionsseite herunter.
  • Angenommen, Sie haben bereits ein lokales Repository (von git clone) erstellt: können Sie eine bestimmte Version mithilfe eines Git- Tag. Wenn Sie beispielsweise mit der Version v9.10 und nicht mit der main-Branch die folgenden Befehle in Ihr lokales Repository ein:

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

Build konfigurieren

Bevor Sie OR-Tools erstellen, müssen Sie das Build-System von CMake konfigurieren Generator.

Öffnen Sie ein Terminal und rufen Sie das Verzeichnis auf, in dem Sie die Dateien extrahiert haben. Geben Sie als Nächstes Folgendes ein:

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

Mehr erfahren Sie in der CMake-Dokumentation .

SCIP verwenden

Seit Version 7.8 ist SCIP jetzt integriert, sodass Sie es nicht manuell installieren müssen.

Gurobi verwenden

Gurobi ist jetzt vorintegriert. Bei Bedarf sucht OR-Tools zur Laufzeit nach die gemeinsam genutzte Gurobi-Bibliothek im Standard-Installationspfad der Gurobi-Installationsprogramme unter MAC OS X und Windows oder mithilfe der Umgebungsvariable GUROBI_HOME.

Optionalen MIP-Resolver eines Drittanbieters verwenden

Sie können OR-Tools auch mit einem der folgenden optionalen Drittanbieter-MIPs verwenden Solver, deren Unterstützung standardmäßig deaktiviert ist:

Werfen Sie einen Blick auf dieser Dokumentation .

Quellcode erstellen

Öffnen Sie zum Erstellen des Quellcodes ein Terminal und wechseln Sie zu dem Verzeichnis, in dem Sie die Dateien extrahiert haben. Geben Sie dann den folgenden Befehl ein, um OR-Tools zu kompilieren:

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

Mehr erfahren Sie in der CMake-Dokumentation .

Quellcode testen

Sie können überprüfen, ob alles korrekt ausgeführt wird, indem Sie Folgendes eingeben:

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

Hier werden Beispiele für ODER-Tools ausgeführt. Wenn alle Beispiele abgeschlossen haben, sind Sie bereit, OR-Tools verwenden.

Build-Dateien bereinigen

Wenn Sie OR-Tools neu installieren müssen, führen Sie den Befehl aus:

rm -r build

entfernt alle kompilierten Abhängigkeiten. Dies kann hilfreich sein, wenn Sie Ihr Gerät auf einen bereinigten Zustand zurücksetzen möchten.

Geben Sie dann die Befehle noch einmal ein:

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

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

OR-Tools auf Ihrem Betriebssystem installieren

Sie können OR-Tools für .Net auf Ihrem Betriebssystem installieren, indem Sie Folgendes eingeben:

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