Introduzione
Questa guida spiega come creare dall'origine OR-Strumenti, con il supporto per .Net, 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, consigliamo l'installazione del pacchetto.
Anche se queste istruzioni potrebbero funzionare anche su altre varianti Linux, li hanno testati 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 24.04 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-Tools.
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
SWIG
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
SDK .Net Core >= 3,1
Successivamente, installa l'SDK .Net Core versione 3.1 o successive. Per farlo, apri una finestra del terminale e inserisci:
Alpine
apk add dotnet6-sdk
ref: https://learn.microsoft.com/en-us/dotnet/core/install/linux-alpine
Centos
riferimento: https://learn.microsoft.com/it-it/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
Prima di installare .NET, esegui questi comandi per aggiungere l'interfaccia la chiave di firma del pacchetto al tuo elenco di chiavi attendibili e aggiungi il pacchetto repository Git.
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
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-debiansudo apt update
sudo apt install -y dotnet-sdk-6.0
Cappello fedora
sudo dnf install -y dotnet-sdk-6.0
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-fedora
Cappello fedora
sudo dnf install -y dotnet-sdk-6.0
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-fedora
OpenSUSE
Prima di installare .NET, esegui questi comandi per aggiungere l'interfaccia la chiave di firma del pacchetto al tuo elenco di chiavi attendibili e aggiungi il pacchetto repository Git.
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
Quindi, puoi installare l'SDK .Net utilizzando il seguente comando:
sudo zypper install -y dotnet-sdk-6.0
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-opensuse
Ubuntu
sudo apt install -y dotnet-sdk-6.0
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-ubuntu
Ubuntu
sudo apt install -y dotnet-sdk-6.0
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-ubuntu
Ubuntu
sudo apt install -y dotnet-sdk-6.0
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-ubuntu
Scarica il codice sorgente
Esistono due rami distinti del codice sorgente di OR-Strumenti
GitHub: stable
e main
.
La filiale stable
è stata accuratamente testata e dovrebbe funzionare perfettamente su tutte
piattaforme supportate.
Nella filiale main
si trovano gli ultimi aggiornamenti
sono stati applicati 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 sull'icona Pulsante
Clone or download
in GitHub.
Scarica il codice sorgente principale
Per recuperare il codice sorgente dal ramo main
, inserisci:
git clone -b main https://github.com/google/or-tools
Scaricare release precedenti
Puoi recuperare il codice sorgente delle versioni precedenti in uno dei seguenti modi:
- Scarica una release precedente dalla pagina di rilascio di GitHub.
Supponendo che tu abbia già creato un repository locale (entro
git clone
), puoi controllare una release specifica usando un tag. Ad esempio, per lavorare con la release v9.10 anziché con Ramomain
, inserisci i seguenti comandi nel tuo repository locale:git fetch --all --tags --prune
git checkout tags/v9.10 -b v9.10
Configura la build
Prima di creare OR-Tools, devi configurare il sistema di compilazione CMake generatore.
Apri un terminale e vai alla directory in cui hai estratto i file. Inserisci quindi:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_DOTNET=ON
Controlla il Documentazione di CMake per maggiori dettagli.
Utilizzo di SCIP
Dalla versione 7.8, SCIP è ora integrato, quindi non sarà necessario installarlo manualmente.
Utilizzo di Gurobi
Gurobi è ora preintegrato. Se necessario, in fase di runtime, OR-Tools cercherà
La libreria condivisa di Gurobi nel percorso di installazione predefinito degli utenti che hanno eseguito l'installazione di Gurobi.
su MAC OS X e Windows oppure usando la variabile di ambiente GUROBI_HOME
.
Utilizzo di un risolutore MIP di terze parti facoltativo
Puoi anche usare OR-Tools con uno qualsiasi dei seguenti MIP facoltativi di terze parti risolutori il cui supporto è disattivato per impostazione predefinita:
- CPLEX
- GLPK (solo Linux e MacOS)
- Risolutore XPRESS
Consulta questi dati: questa documentazione per maggiori dettagli.
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 comando seguente per compilare OR-Tools:
cmake --build build --config Release --target all -j -v
Controlla il Documentazione di CMake per maggiori dettagli.
Testa il codice sorgente
Per verificare che tutto funzioni correttamente, inserisci:
cmake --build build --config Release --target test -v
Vengono eseguiti esempi per OR-Tools. Se tutti gli esempi vengono eseguiti puoi iniziare inizia a utilizzare OR-Tools.
Pulizia dei file di build
Per reinstallare OR-Tools, il comando:
rm -r build
rimuoverà tutte le dipendenze compilate. Questo può essere utile per ripristinare uno stato pulito.
Quindi, inserisci di nuovo i comandi:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_DOTNET=ON
cmake --build build --config Release --target all -j -v
Installazione di OR-Tools nel sistema operativo
Puoi installare OR-Tools per .Net nel tuo sistema operativo inserendo:
cmake --build build --config Release --target install -v