Introduction
Ce guide explique comment compiler à partir de la source OR-Tools, avec prise en charge de .Net, sur Linux.
Sauf si vous prévoyez de modifier le code source ou d'utiliser un outil de résolution tiers avec OU-Tools, nous vous recommandons d'installer le package.
Bien que ces instructions puissent également fonctionner sur d'autres variantes Linux, nous ne les ont testés que sur des machines répondant aux exigences suivantes:
- Alpine Edge 64 bits (X86_64)
- Centos 7 LTS 64 bits (x86_64)
- SID Debian 64 bits (x86_64)
- Debian 11 (bullseye) 64 bits (x86_64)
- Fedora 38 64 bits (x86_64)
- Fedora 37 64 bits (x86_64)
- OpenSuse Leap 64 bits (x86_64)
- Ubuntu 24.04 64 bits (x86_64)
- Ubuntu 22.04 LTS 64 bits (x86_64)
- Ubuntu 20.04 LTS 64 bits (x86_64)
Prérequis
Les sections suivantes décrivent les conditions préalables à l'installation de OR-Tools.
Outils C++
Pour installer les outils C++, ouvrez une fenêtre de terminal et saisissez:
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
Pour installer SWIG, ouvrez une fenêtre de terminal et saisissez la commande suivante:
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
SDK .Net Core 3.1 ou version ultérieure
Installez ensuite le SDK .Net Core version 3.1 ou ultérieure. Pour ce faire, ouvrez une fenêtre de terminal et saisissez:
Alpine
apk add dotnet6-sdk
ref: https://learn.microsoft.com/en-us/dotnet/core/install/linux-alpine
Centos
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-centos#centos-7sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
sudo yum install -y dotnet-sdk-6.0
Debian
Avant d'installer .NET, exécutez les commandes suivantes pour ajouter le clé de signature du package à votre liste de clés de confiance et ajoutez le package un dépôt de clés.
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
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-debiansudo apt update
sudo apt install -y dotnet-sdk-6.0
Fedora
sudo dnf install -y dotnet-sdk-6.0
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-fedora
Fedora
sudo dnf install -y dotnet-sdk-6.0
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-fedora
OpenSUSE
Avant d'installer .NET, exécutez les commandes suivantes pour ajouter le clé de signature du package à votre liste de clés de confiance et ajoutez le package un dépôt de clés.
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
Vous pouvez ensuite installer le SDK .Net à l'aide de la commande suivante:
sudo zypper install -y dotnet-sdk-6.0
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-opensuse
Ubuntu
sudo apt install -y dotnet-sdk-6.0
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-Ubuntu
Ubuntu
sudo apt install -y dotnet-sdk-6.0
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-Ubuntu
Ubuntu
sudo apt install -y dotnet-sdk-6.0
réf. : https://learn.microsoft.com/fr-fr/dotnet/core/install/linux-Ubuntu
Télécharger le code source
Il existe deux branches distinctes du code source OR-Tools sur
GitHub: stable
et main
.
La branche stable
a été minutieusement testée et devrait fonctionner parfaitement
plates-formes compatibles.
La branche main
contient les dernières mises à jour et
si des améliorations ont été apportées. elle est plus actuelle, mais moins stable.
Télécharger le code source stable
Vous pouvez obtenir le code source stable de OR-Tools de l'une des manières suivantes:
Clonez la branche
stable
en saisissant la commande suivante:git clone https://github.com/google/or-tools
Téléchargez la dernière version dans un fichier compressé en cliquant sur Bouton
Clone or download
dans GitHub.
Télécharger le code source principal
Pour récupérer le code source à partir de la branche main
, saisissez:
git clone -b main https://github.com/google/or-tools
Télécharger les versions précédentes
Vous pouvez obtenir le code source des versions précédentes de l'une des manières suivantes:
- Téléchargez une version précédente sur la page des versions GitHub.
En supposant que vous ayez déjà créé un dépôt local (par
git clone
), vous pouvez consulter une version spécifique à l'aide d'un tag. Par exemple, pour travailler avec la version 9.10 au lieu de la versionmain
, saisissez les commandes suivantes dans votre dépôt local:git fetch --all --tags --prune
git checkout tags/v9.10 -b v9.10
Configurer la compilation
Avant de créer des outils OU, vous devez configurer le système de compilation CMake générateur.
Ouvrez un terminal et accédez au répertoire dans lequel vous avez extrait les fichiers. Ensuite, saisissez cette commande :
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_DOTNET=ON
Consultez le Documentation CMake pour en savoir plus.
Utiliser SCIP
Depuis la version 7.8, SCIP est désormais intégré, vous n'aurez donc pas à l'installer manuellement.
Utiliser Gurobi
Gurobi est désormais préintégré. Au besoin, au moment de l'exécution, OR-Tools recherche
la bibliothèque partagée Gurobi dans le chemin d'installation par défaut des programmes d'installation Gurobi
sous MAC OS X et Windows, ou à l'aide de la variable d'environnement GUROBI_HOME
.
Utiliser une solution MIP tierce facultative
Vous pouvez également utiliser les outils OR avec l'un des produits MIP tiers en option suivants les résolveurs dont la prise en charge est désactivée par défaut:
- CPLEX
- GLPK (Linux et macOS uniquement)
- Solveur XPRESS
Veuillez consulter cette documentation pour en savoir plus.
Compiler le code source
Pour compiler le code source, ouvrez un terminal et accédez au répertoire vous avez extrait les fichiers. Saisissez ensuite la commande suivante pour compiler OR-Tools:
cmake --build build --config Release --target all -j -v
Consultez le Documentation CMake pour en savoir plus.
Tester le code source
Pour vérifier que tout fonctionne correctement, saisissez la commande suivante:
cmake --build build --config Release --target test -v
Cette opération permet d'exécuter des exemples pour OR-Tools. Si tous les exemples s'exécutent avec succès, vous êtes prêt à Premiers pas avec OR-Tools.
Nettoyer les fichiers de compilation
Si vous devez réinstaller OR-Tools, la commande suivante:
rm -r build
supprimera toutes les dépendances compilées. Cela peut être utile pour rétablir un état propre.
Saisissez à nouveau les commandes suivantes:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_DOTNET=ON
cmake --build build --config Release --target all -j -v
Installation de OR-Tools sur votre système d'exploitation
Vous pouvez installer OR-Tools pour .Net sur votre système d'exploitation en saisissant:
cmake --build build --config Release --target install -v