Creazione da sorgente OR-Tools .Net su MacOS

Introduzione

Questa guida spiega come creare da OR-Tools di origine, con supporto per .Net, su MacOS.

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 di macOS, le abbiamo testate solo su macchine che soddisfano i seguenti requisiti:

  • MacOS 13.0.1 (Ventura) Intel a 64 bit (x86_64)
  • MacOS 13.0.1 (Ventura) M1 (arm64)

Prerequisiti

Le seguenti sezioni descrivono i prerequisiti per l'installazione di OR-Strumenti.

Strumenti a riga di comando Xcode

Devi installare gli strumenti a riga di comando Xcode. Per farlo, apri il Terminale, che trovi in /Applications/Utilities/, e inserisci:

xcode-select --install

Fai clic su "Installa" per scaricare e installare gli strumenti a riga di comando Xcode. Non è necessario "Ottieni Xcode" dall'App Store. Se la tua connessione a internet è lenta, l'operazione potrebbe richiedere diversi minuti.

Verifica di aver installato correttamente gli strumenti a riga di comando Xcode:

xcode-select -p

Dovresti vedere:

/Library/Developer/CommandLineTools

Birreria artigianale

Per installare i prerequisiti rimanenti, ti consigliamo di installare prima il "gestore di pacchetti mancante per macOS", noto come Homebrew. Per farlo, apri una finestra del terminale e inserisci:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew update

Per verificare di aver installato correttamente il caffè:

brew --version

Dovresti vedere:

Homebrew 1.6.9-8-g25542d7
Homebrew/homebrew-core (git revision 0e0c84; last commit 2018-06-20)

Strumenti C++

Per installare gli strumenti C++, apri una finestra del terminale e inserisci:

brew install cmake wget pkg-config

Strumento SWIG

Per installare lo strumento SWIG, apri una finestra del terminale e inserisci:

brew install swig

SDK .Net 6.0

Devi installare l'SDK .Net 6.0.

Dopo aver installato Homebrew, puoi installare il pacchetto dotnet-sdk aprendo una finestra del terminale e digitando:

brew cask install dotnet-sdk

Puoi verificare che l'interfaccia a riga di comando di dotnet sia installata correttamente utilizzando il seguente comando:

dotnet --info

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.immagine del pulsante di clonazione o di download

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 ramo main, 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_DOTNET=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:

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_BUILD -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 RUN_TESTS -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_DOTNET=ON

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

Installazione di OR-Strumenti sul sistema operativo

Puoi installare OR-Tools per .Net sul tuo sistema operativo inserendo:

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