Introdução ao Dtc
        
        
          O pacote dtc contém o Device Tree
          Compiler para trabalhar com fontes de árvores de dispositivos e
          arquivos binários e também libfdt, uma biblioteca de utilitários
          para ler e manipular árvores de dispositivos no formato binário.
        
        
          Esse pacote é conhecido por construir e funcionar corretamente
          usando uma plataforma LFS 12.4.
        
        
          Informação do Pacote
        
        
          
            - 
              
                Transferência (HTTP): https://kernel.org/pub/software/utils/dtc/dtc-1.7.2.tar.xz
              
             
            - 
              
                Soma de verificação MD5 da transferência:
                0f193be84172556027da22d4fe3464e0
              
             
            - 
              
                Tamanho da transferência: 168 KB
              
             
            - 
              
                Espaço em disco estimado exigido: 13 MB (com testes)
              
             
            - 
              
                Tempo de construção estimado: 0,2 UPC (com testes)
              
             
          
         
        
          Dependências de Dtc
        
        
          Opcionais
        
        
          libyaml-0.2.5, SWIG-4.3.1 e texlive-20250308
        
       
      
        
          Instalação do Dtc
        
        
          Instale dtc executando os
          seguintes comandos:
        
        mkdir build &&
cd    build &&
meson setup ..            \
      --prefix=/usr       \
      --buildtype=release \
      -D python=disabled  &&
ninja
        
          Para testar os resultados, emita: CC='gcc -Wl,-z,noexecstack' meson test
          -v.
        
        
          Agora, como o(a) usuário(a) root:
        
        ninja install
        
          Ainda como o(a) usuário(a) root,
          remova a biblioteca estática inútil:
        
        rm /usr/lib/libfdt.a
        
          Se você tiver texlive-20250308 instalado, poderá
          construir o formato PDF da documentação emitindo o seguinte
          comando:
        
        pushd ../Documentation
  latexmk -bibtex --pdf dtc-paper &&
  latexmk -bibtex --pdf dtc-paper -c
popd
        
          Para instalar a documentação, como o(a) usuário(a) root emita o seguinte comando:
        
        cp -R ../Documentation -T /usr/share/doc/dtc-1.7.2
        
          Se você tiver instalado SWIG-4.3.1 e desejar instalar as ligações Python 3
          desse pacote, construa o módulo Python 3:
        
        pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir ..
        
          Como o(a) usuário(a) root, instale
          o módulo Python 3:
        
        pip3 install --no-index --find-links dist --no-user libfdt
       
      
        
          Explicações do Comando
        
        
          --buildtype=release:
          Especifique um tipo de construção adequado para lançamentos
          estáveis do pacote, pois o padrão possivelmente produza binários
          não otimizados.
        
        
          -D python=disabled: Essa
          chave impede construir a ligação do Python 3 com o método obsoleto
          (executando setup.py
          diretamente). Nós construiremos a ligação do Python 3 com o comando
          pip3 wheel
          separadamente, se desejado.
        
        
          CC='gcc -Wl,-z,noexecstack': Essa
          variável impede marcar as bibliotecas compartilhadas na suíte de
          teste como exigindo pilha executável. A Glibc 2.41 ou posterior
          parou de permitir abrir com dlopen
          tal biblioteca compartilhada, de forma que a suíte de teste
          falharia. Mas essas bibliotecas compartilhadas não precisam
          realmente de uma pilha executável, de modo que nós podemos usar
          -Wl,-z,noexecstack para
          consertar a suíte de teste. É necessário no ambiente CC para o meson
          test porque essas bibliotecas compartilhadas são
          construídas por um conjunto de comandos sequenciais de teste em vez
          do sistema de construção meson/ninja, e o conjunto de comandos
          sequenciais de teste não reconhece outras variáveis de ambiente
          “comuns” como
          LDFLAGS.