Introduzione
Questa guida spiega come creare gli strumenti OR di origine, con supporto per Java, su Linux.
A meno che tu non abbia intenzione di modificare il codice sorgente o di utilizzare un risolutore di terze parti con OR-Strumenti, ti consigliamo l'installazione del pacchetto.
Sebbene queste istruzioni possano funzionare anche su altre varianti Linux, le abbiamo testate solo su macchine che soddisfano i seguenti requisiti:
- Alpine Edge a 64 bit (x86_64)
- Centos 7 LTS 64-bit (x86_64)
- SID Debian a 64 bit (x86_64)
- Debian 11 (bullseye) a 64 bit (x86_64)
- Fedora 38 a 64 bit (x86_64)
- Fedora 37 a 64 bit (x86_64)
- OpenSuse Leap a 64 bit (x86_64)
- Ubuntu 23.10 a 64 bit (x86_64)
- Ubuntu 22.04 LTS a 64 bit (x86_64)
- Ubuntu 20.04 LTS a 64 bit (x86_64)
Prerequisiti
Le seguenti sezioni descrivono i prerequisiti per l'installazione di OR-Strumenti.
Strumenti C++
Per installare gli strumenti C++, apri una finestra del terminale e inserisci:
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
Cappello fedora
sudo dnf groupinstall -y 'Development Tools'
sudo dnf install -y gcc-c++ cmake redhat-lsb-core
Cappello 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
CANNOT TRANSLATE
Per installare SWIG, apri una finestra del terminale e inserisci:
Alpine
apk add swig
Centos
sudo yum install -y swig
Debian
sudo apt install -y swig
Cappello fedora
sudo dnf install -y swig
Cappello 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
Java JDK >= 8,0
Per installare Java JDK versione 8.0 o successive, aprire una finestra del terminale e inserire:
Alpine
sudo apk add openjdk8
export JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk
Centos
sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
Debian
sudo apt install -y default-jdk
export JAVA_HOME=/usr/lib/jvm/default-java
Cappello fedora
sudo dnf install -y java-openjdk java-openjdk-devel
Cappello fedora
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
Per installare Maven versione 3.3 o successive, apri una finestra del terminale e inserisci:
Alpine
sudo apk add maven
Centos
sudo yum install -y maven
Debian
sudo apt install -y maven
Cappello fedora
sudo dnf install -y maven
Cappello fedora
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
Puoi verificare che Maven sia installato correttamente e sia in grado di trovare java utilizzando il seguente comando:
mvn -v
Scarica il codice sorgente
Ci sono due rami distinti del codice sorgente OR-Tools su
GitHub: stable
e main
.
Il ramo stable
è stato testato in modo approfondito e dovrebbe funzionare perfettamente su tutte
le piattaforme supportate.
Nel ramo main
sono stati applicati gli ultimi aggiornamenti e miglioramenti. È più attuale, ma meno stabile.
Scarica il codice sorgente stabile
Puoi ottenere il codice sorgente stabile per OR-Tools in uno dei seguenti modi:
Clona il ramo
stable
inserendo:git clone https://github.com/google/or-tools
Scarica la release più recente in un file compresso facendo clic sul pulsante
Clone or download
in GitHub.
Scaricare il codice sorgente principale
Per recuperare il codice sorgente dal ramo main
, inserisci:
git clone -b main https://github.com/google/or-tools
Scaricare le release precedenti
Puoi ottenere il codice sorgente delle release precedenti in uno dei seguenti modi:
- Scaricare una release precedente dalla pagina di rilascio di GitHub.
Supponendo che tu abbia già creato un repository locale (entro il giorno
git clone
), puoi controllare una release specifica utilizzando un tag Git. Ad esempio, per lavorare con la release v9.9 anziché il ramomain
, inserisci i seguenti comandi nel repository locale:git fetch --all --tags --prune
git checkout tags/v9.9 -v v9.9
Configura la build
Prima di creare OR-Tools, devi configurare il generatore di sistema di compilazione CMake.
Apri un terminale e vai alla directory in cui hai estratto i file. Inserisci quindi:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON
Per i dettagli, consulta la documentazione di CMake.
Utilizzo di SCIP
Dalla versione 7.8, SCIP è integrato in modo da non doverlo installare manualmente.
Utilizzo di Gurobi
Ora Gurobi è preintegrato. Se necessario, in fase di runtime, OR-Tools cercherà la libreria condivisa Gurobi nel percorso di installazione predefinito dei programmi di installazione di Gurobi su MAC OS X e Windows oppure utilizzando la variabile di ambiente GUROBI_HOME
.
Utilizzo di un risolutore MIP di terze parti facoltativo
Puoi anche utilizzare OR-Tools con uno dei seguenti risolutori MIP di terze parti facoltativi il cui supporto è disattivato per impostazione predefinita:
- CPLEX
- GLPK (solo Linux e MacOS)
- Risolutore XPRESS
Per informazioni dettagliate, consulta questa documentazione.
Crea il codice sorgente
Per creare il codice sorgente, apri un terminale e vai alla directory in cui hai estratto i file. Quindi inserisci il seguente comando per compilare OR-Strumenti:
cmake --build build --config Release --target all -j -v
Per i dettagli, consulta la documentazione di CMake.
Testare il codice sorgente
Puoi verificare che tutto funzioni correttamente inserendo:
cmake --build build --config Release --target test -v
Vengono eseguiti esempi per OR-Tools. Se tutti gli esempi vengono eseguiti correttamente, puoi iniziare a utilizzare OR-Strumenti.
Pulizia dei file di build
Se devi reinstallare OR-Strumenti, il comando:
rm -r build
rimuove tutte le dipendenze compilate. Questo può essere utile per ripristinare lo stato originale.
Quindi, inserisci di nuovo i comandi:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON
cmake --build build --config Release --target all -j -v
Installazione di OR-Strumenti sul sistema operativo
Puoi installare OR-Tools per Java sul tuo sistema operativo inserendo:
cmake --build build --config Release --target install -v