Wprowadzenie
W tym przewodniku wyjaśniamy, jak tworzyć na podstawie źródeł LUB-Narzędzia, z uwzględnieniem Java w systemie Linux.
Chyba że zamierzasz modyfikować kod źródłowy lub korzystać z rozwiązania innej firmy przy użyciu narzędzi LUB, zalecamy instalację pakietu.
Chociaż instrukcje te mogą zadziałać również w innych wersjach Linuksa, zostały przetestowane tylko na komputerach spełniających następujące wymagania:
- Alpine Edge 64-bitowa (x86_64)
- Centos 7 LTS 64-bitowy (x86_64)
- Debian SID 64-bitowy (x86_64)
- Debian 11 (bullseye) 64-bitowy (x86_64)
- Fedora 38 64-bitowa (x86_64)
- Fedora 37 64-bitowy (x86_64)
- OpenSuse Leap 64-bitowy (x86_64)
- Ubuntu 24.04 64-bitowy (x86_64)
- Ubuntu 22.04 LTS 64-bitowy (x86_64)
- Ubuntu 20.04 LTS 64-bitowy (x86_64)
Wymagania wstępne
W kolejnych sekcjach opisano wymagania wstępne dotyczące instalacji narzędzi OR.
Narzędzia C++
Aby zainstalować narzędzia C++, otwórz okno terminala i wpisz:
Alpine
apk add alpine-sdk linux-headers cmake lsb-release-minimal
Cento
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
Aby zainstalować SWIG, otwórz okno terminala i wpisz:
Alpine
apk add swig
Cento
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
Java JDK >= 8.0
Aby zainstalować pakiet Java JDK w wersji 8.0 lub nowszej, otwórz okno terminala i wpisz:
Alpine
sudo apk add openjdk8
export JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk
Cento
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
Fedora
sudo dnf install -y java-openjdk java-openjdk-devel
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
Aby zainstalować Maven w wersji 3.3 lub nowszej, otwórz okno terminala i wpisz:
Alpine
sudo apk add maven
Cento
sudo yum install -y maven
Debian
sudo apt install -y maven
Fedora
sudo dnf install -y maven
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
Możesz sprawdzić, czy program Maven jest poprawnie zainstalowany i znaleźć oprogramowanie Java za pomocą tego polecenia:
mvn -v
Pobieranie kodu źródłowego
Kod źródłowy narzędzi LUB jest podzielony na dwie osobne gałęzie:
GitHub: stable
i main
.
Gałąź stable
została dokładnie przetestowana i powinna działać bez problemów na wszystkich
obsługiwanych platform.
Gałąź main
zawiera najnowsze aktualizacje i
wprowadzono ulepszenia; jest bardziej aktualny, ale mniej stabilny.
Pobierz stabilny kod źródłowy
Stabilny kod źródłowy narzędzi LUB można uzyskać na jeden z tych sposobów:
Skopiuj gałąź
stable
, wpisując:git clone https://github.com/google/or-tools
Pobierz najnowszą wersję w pliku skompresowanym, klikając
Clone or download
w serwisie GitHub.
Pobierz główny kod źródłowy
Aby pobrać kod źródłowy z gałęzi main
, wpisz:
git clone -b main https://github.com/google/or-tools
Pobieranie poprzednich wersji
Kod źródłowy poprzednich wersji możesz pobrać na jeden z tych sposobów:
- Pobierz poprzednią wersję ze strony wersji GitHub.
Zakładając, że masz już utworzone repozytorium lokalne (do
git clone
), możesz sprawdzić konkretną wersję za pomocą Git . Aby na przykład pracować z wersją 9.10,main
, wpisz w lokalnym repozytorium te polecenia:git fetch --all --tags --prune
git checkout tags/v9.10 -b v9.10
Konfigurowanie kompilacji
Przed utworzeniem narzędzi LUB musisz skonfigurować system kompilacji CMake generatora.
Otwórz terminal i przejdź do katalogu, w którym zostały rozpakowane pliki. Potem wpisz:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON
Sprawdź Dokumentacja CMake .
Korzystanie z SCIP
Od wersji 7.8 system SCIP jest teraz zintegrowany, więc nie musisz go instalować ręcznie.
Korzystanie z Gurobi
Aplikacja Gurobi jest teraz wstępnie zintegrowana. W razie potrzeby, w trakcie działania, funkcja LUB-Narzędzia wyszuka
wspólne biblioteki Gurobi w domyślnej ścieżce instalacji instalatorów Gurobi.
w systemie MAC OS X i Windows lub za pomocą zmiennej środowiskowej GUROBI_HOME
.
Korzystanie z opcjonalnego rozwiązania MIP innej firmy
Możesz też użyć narzędzi LUB z dowolnym z poniższych opcjonalnych MIP innych firm: rozwiązań, których obsługa jest domyślnie wyłączona:
- CPLEX
- GLPK (tylko Linux i macOS)
- Rozwiązania do rozwiązywania problemów XPRESS
Zwróć uwagę na tej dokumentacji .
Kompilowanie kodu źródłowego
Aby utworzyć kod źródłowy, otwórz terminal i przejdź do katalogu, w którym wyodrębniono pliki. Następnie wpisz następujące polecenie, aby skompilować narzędzia OR-Narzędzia:
cmake --build build --config Release --target all -j -v
Sprawdź Dokumentacja CMake .
Testowanie kodu źródłowego
Aby sprawdzić, czy wszystko działa poprawnie, wpisz:
cmake --build build --config Release --target test -v
Uruchomiono przykłady dla narzędzi LUB. Jeśli wszystkie przykłady są uruchamiane możesz przejść do zacznij korzystać z narzędzi LUB.
Czyszczenie plików kompilacji
Jeśli chcesz ponownie zainstalować narzędzia OR-Narzędzia, użyj polecenia:
rm -r build
spowoduje usunięcie wszystkich skompilowanych zależności. Może to być przydatne, gdy chcesz przywrócić stan „czysty”.
Następnie wpisz te polecenia ponownie:
cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON
cmake --build build --config Release --target all -j -v
Instalowanie narzędzi LUB w systemie operacyjnym
W swoim systemie operacyjnym możesz zainstalować narzędzia OR-Narzędzia do języka Java, wpisując:
cmake --build build --config Release --target install -v