CMake-3.25.2

Introdução ao "CMake"

O pacote CMake contém um conjunto moderno de ferramentas usado para gerar "Makefiles". É um sucessor do script configure gerado automaticamente e pretende ser independente de plataforma e de compilador. Um usuário significativo do CMake é o KDE desde a versão 4.

Esse pacote é conhecido por construir e funcionar adequadamente usando uma plataforma LFS 11.3.

Informação do Pacote

  • Transferência (HTTP): https://cmake.org/files/v3.25/cmake-3.25.2.tar.gz

  • Transferência (FTP):

  • Soma de verificação MD5da transferência: 24cde56ea2dc5e22d7f5d1abc7a82258

  • Tamanho da transferência: 10 MB

  • Espaço em disco estimado exigido: 354 MB (adicionar 1,1 GB para os testes)

  • Tempo de construção estimado: 1,6 UPC (adicionar 3,2 UPC para os testes, ambos usando paralelismo=4)

Dependências do "CMake"

Recomendadas

Opcionais

GCC-12.2.0 (para "gfortran"), git-2.39.2 (para uso durante testes), Mercurial-6.3.2 (para uso durante testes), Qt-5.15.8 (para a "GUI" baseada em "Qt"), sphinx-6.1.3 (para construir documentos), Subversion-1.14.2 (para testagem) e rhash

Observações de Usuário(a): https://wiki.linuxfromscratch.org/blfs/wiki/cmake

Instalação do "CMake"

Instale CMake executando os seguintes comandos:

sed -i '/"lib64"/s/64//' Modules/GNUInstallDirs.cmake &&

./bootstrap --prefix=/usr       \
            --system-libs        \
            --mandir=/share/man  \
            --no-system-jsoncpp  \
            --no-system-librhash \
            --docdir=/share/doc/cmake-3.25.2 &&
make

Para testar os resultados, emita: LC_ALL=en_US.UTF-8 bin/ctest -j<N> -O cmake-3.25.2-test.log, onde <N> é um número inteiro entre 1 e o número de núcleos do sistema. A configuração de LC_ALL é necessária para evitar algumas falhas de teste quando algumas das variáveis de localidade estão definidas para localidades diferentes do inglês. Um teste, "BundleUtilities", é conhecido por falhar.

Se você quiser investigar um problema com um determinado "problem1-test", [então] use bin/ctest -R "problem1-test" e, para omiti-lo, use bin/ctest -E "problem1-test". Essas opções podem ser usadas juntas: bin/ctest -R "problem1-test" -E "problem2-test". A opção -N pode ser usada para exibir todos os testes disponíveis, e você pode executar bin/ctest para um subconjunto de testes usando nomes ou números separados por espaços como opções . A opção --help pode ser usada para mostrar todas as opções.

Agora, como o(a) usuário(a) root:

make install

Explicações do Comando

sed ... Modules/GNUInstallDirs.cmake: Esse comando desabilita aplicativos que usam "cmake" de tentar instalar arquivos em "/usr/lib64/".

--system-libs: Essa chave força o sistema de construção a vincular-se a Zlib, Bzip2, cURL, nghttp2, Expat e libarchive instalados no sistema.

--no-system-jsoncpp: Essa chave remove a biblioteca JSON-C++ da lista de bibliotecas do sistema. Uma versão empacotada dessa biblioteca é usada em lugar dela.

--no-system-librhash: Essa chave remove a biblioteca librhash da lista de bibliotecas do sistema usadas. Uma versão empacotada dessa biblioteca é usada em lugar dela.

--no-system-{curl,libarchive,libuv,nghttp2}: Use a opção correspondente na lista para o bootstrap se uma dependência recomendada não estiver instalada. Uma versão empacotada da dependência será usada em lugar dele.

--qt-gui: Essa chave habilita construir a "GUI" baseada em Qt para CMake.

--parallel=: Essa chave habilita executar as instruções iniciais de carregamento do CMake com várias tarefas ao mesmo tempo.

Conteúdo

Aplicativos Instalados: ccmake, cmake, cmake-gui (opcional), cpack e ctest
Bibliotecas Instaladas: Nenhum(a)
Diretórios Instalados: /usr/share/cmake-3.25 e /usr/share/doc/cmake-3.25.2

Descrições Curtas

ccmake

é uma estrutura de interação direta com o(a) usuário(a) baseada em "curses" para cmake

cmake

é o gerador de "makefile"

cmake-gui

(opcional) é a estrutura de interação direta com o(a) usuário(a) baseada em Qt para o cmake

cpack

é o aplicativo de empacotamento CMake

ctest

é um utilitário de teste para árvores de construção geradas pelo "cmake"