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

Introdução

Este guia explica como criar a partir do código OR-Tools, com suporte para Python no Linux.

A menos que você planeje modificar o código-fonte ou usar um solucionador de terceiros com OR-Tools, recomendamos a instalação do pacote.

Embora essas instruções também possam funcionar em outras variantes do Linux, nós os testou apenas em máquinas que atendem aos seguintes requisitos:

  • Alpine Edge 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 24.04 de 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 o OR-Tools.

Ferramentas C++

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

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

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

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

Python

É preciso ter o Python 3.8 ou superior instalado.

Para instalar o Python 3.8+, abra uma janela de terminal e digite:

Alpine

apk add python3-dev py3-pip py3-wheel

Cento

sudo yum install -y python3 python3-devel python3-pip numpy

Debian

sudo apt install -y python3-dev python3-pip python3-venv

Fedora

sudo dnf install -y python3-devel python3-pip python3-venv

Fedora

sudo dnf install -y python3-devel python3-pip python3-venv

OpenSUSE

sudo zypper install -y python3-devel python3-pip python3-wheel

Ubuntu

sudo apt install -y python3-dev python3-pip python3-venv

Ubuntu

sudo apt install -y python3-dev python3-pip python3-venv

Ubuntu

sudo apt install -y python3-dev python3-pip python3-venv

Verifique a instalação do Python 3 usando:

python3 --version
python3 -c "import platform; print(platform.architecture()[0])"
python3 -m pip --version

Faça o download do código-fonte

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

A ramificação stable foi totalmente testada e vai funcionar sem falhas em todos plataformas com suporte.
A ramificação main é onde as atualizações e melhorias foram aplicadas. é mais atual, mas menos estável.

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

Você pode obter o código-fonte estável para as ferramentas OR de uma das seguintes maneiras:

  • Clone a ramificação stable digitando:

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

.

Fazer o download do código-fonte principal

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

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ões do GitHub.
  • Supondo que você já tenha criado um repositório local (por git clone), é possível conferir uma versão específica usando Tag. Por exemplo, para trabalhar com a versão v9.10 em vez da main, insira os seguintes comandos no repositório local:

    git fetch --all --tags --prune
    git checkout tags/v9.10 -b v9.10
    

Configure o build

Antes de criar o OR-Tools, você precisa configurar o sistema de build CMake gerador.

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

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

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

Como usar o SCIP

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

Como usar o Gurobi

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

Como usar um solucionador MIP de terceiros opcional

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

Consulte o 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. Depois, digite o seguinte comando para compilar as 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

Para verificar se tudo está funcionando corretamente, insira:

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

Isso executa exemplos para o OR-Tools. Se todos os exemplos forem executados com sucesso, está tudo pronto começar a usar o OR-Tools.

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 na redefinição para um estado limpo.

Em seguida, insira novamente os comandos:

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

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

Como instalar o OR-Tools no seu sistema operacional

Para instalar o OR-Tools for Python no sistema operacional, digite:

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