Como criar a partir de código-fonte OU Ferramentas Java no Linux

Introdução

Este guia explica como criar a partir de ferramentas OR de origem, com suporte para Java, no Linux.

A menos que você pretenda modificar o código-fonte ou usar um solucionador de terceiros com ferramentas OR, recomendamos a instalação do pacote (link em inglês).

Embora essas instruções também possam funcionar em outras variantes do Linux, as testamos apenas em máquinas que atendem aos seguintes requisitos:

  • Alpine Edge de 64 bits (x86_64)
  • Centos 7 LTS de 64 bits (x86_64)
  • Debian SID de 64 bits (x86_64)
  • Debian 11 (Bullseye) de 64 bits (x86_64)
  • Fedora 38 de 64 bits (x86_64)
  • Fedora 37 de 64 bits (x86_64)
  • OpenSuse Leap de 64 bits (x86_64)
  • Ubuntu 23.10 64 bits (x86_64)
  • Ubuntu 22.04 LTS de 64 bits (x86_64)
  • Ubuntu 20.04 LTS de 64 bits (x86_64)

Pré-requisitos

As seções a seguir descrevem os pré-requisitos para instalar as Ferramentas OU.

Ferramentas C++

Para instalar ferramentas C++, abra uma janela do terminal e digite:

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

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

MUDAR

Para instalar o SWIG, abra uma janela do terminal e digite:

Alpine

apk add swig

Centos

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

Para instalar o Java JDK versão 8.0 ou mais recente, abra uma janela do terminal e digite:

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

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

Para instalar a versão 3.3 ou superior do Maven, abra uma janela de terminal e digite:

Alpine

sudo apk add maven

Centos

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

Verifique se o Maven está instalado corretamente e é possível encontrar Java usando o seguinte comando:

mvn -v

Faça o download do código-fonte

Há duas ramificações distintas do código-fonte OR-Tools no GitHub: stable e main.

A ramificação stable foi testada e funciona perfeitamente em todas as plataformas com suporte.
A ramificação main é onde as atualizações e melhorias mais recentes foram aplicadas. Ela é mais atual, mas menos estável.

Fazer o download do código-fonte estável

É possível obter o código-fonte estável para OR-Tools de uma das seguintes maneiras:

  • Clone a ramificação stable digitando:

    git clone https://github.com/google/or-tools
    
  • Faça o download da versão mais recente em um arquivo compactado clicando no botão Clone or download no GitHub. imagem de um clone ou botão de download

Fazer o download do código-fonte principal

Para recuperar o código-fonte da ramificação main, digite:

git clone -b main https://github.com/google/or-tools

Fazer o download de versões anteriores

É possível conseguir o código-fonte de versões anteriores de uma das seguintes maneiras:

  • Faça o download de uma versão anterior na página de versão do GitHub.
  • Supondo que você já tenha criado um repositório local (por git clone), confira uma versão específica usando uma tag do Git. Por exemplo, para trabalhar com a versão v9.9 em vez da ramificação main, insira os seguintes comandos no seu repositório local:

    git fetch --all --tags --prune
    git checkout tags/v9.9 -v v9.9
    

Configure o build

Antes de criar ferramentas OR, configure o gerador do sistema de build do CMake.

Abra um terminal e navegue até o diretório onde você extraiu os arquivos. Em seguida, insira o seguinte comando:

cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON

.

Confira a documentação do CMake para mais detalhes.

Como usar o SCIP

Desde a v7.8, o SCIP agora está integrado para que você não precise instalá-lo manualmente.

Como usar o Gurobi

O Gurobi agora está pré-integrado. Quando necessário, no ambiente de execução, as ferramentas OR vão procurar a biblioteca compartilhada Gurobi no caminho de instalação padrão dos instaladores do Gurobi no MAC OS X e no Windows ou usando a variável de ambiente GUROBI_HOME.

Como usar um solucionador MIP de terceiros opcional

Também é possível usar ferramentas OU com qualquer um dos seguintes solucionadores de MIP de terceiros opcionais com suporte desativado por padrão:

Consulte esta documentação para mais detalhes.

Criar o código-fonte

Para criar o código-fonte, abra um terminal e navegue até o diretório em que você extraiu os arquivos. Insira o seguinte comando para compilar ferramentas OR:

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

Confira a documentação do CMake para mais detalhes.

Testar o código-fonte

Você pode verificar se tudo está funcionando corretamente inserindo:

cmake --build build --config Release --target test -v

Isso executa exemplos de ferramentas OU. Se todos os exemplos forem executados com sucesso, você estará pronto para começar a usar as ferramentas OR.

Como limpar os arquivos de build

Se você precisar reinstalar o OR-Tools, o comando:

rm -r build

vai remover todas as dependências compiladas. Isso pode ser útil para redefinir para um estado limpo.

Em seguida, insira os comandos novamente:

cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON

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

Como instalar o OR-Tools em seu sistema operacional

Você pode instalar OU-Tools para Java em seu sistema operacional digitando:

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