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 updatesudo 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 refreshsudo zypper install -y git gcc11 gcc11-c++ lsb-release
Ubuntu
sudo apt updatesudo apt install -y build-essential cmake lsb-release
Ubuntu
sudo apt updatesudo apt install -y build-essential cmake lsb-release
Ubuntu
sudo apt updatesudo 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-sdkref: 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.rpmsudo 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.debdpkg -i packages-microsoft-prod.debrm packages-microsoft-prod.deb
riferimento: https://learn.microsoft.com/it-it/dotnet/core/install/linux-debiansudo apt updatesudo 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 libicusudo rpm --import https://packages.microsoft.com/keys/microsoft.ascwget https://packages.microsoft.com/config/opensuse/15/prod.reposudo mv prod.repo /etc/zypp/repos.d/microsoft-prod.reposudo 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
stableinserendo:git clone https://github.com/google/or-toolsScarica la release più recente in un file compresso facendo clic sull'icona Pulsante
Clone or downloadin 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 --prunegit 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