Eu registrei que levou 50 minutos para uma compilação inicial da imagem do firmware OpenWrt, assumindo que todos os pacotes necessários foram instalados via sudo apt-get install
. Minha Dir de Raiz do BuildRoot é openwrt
.
Posteriormente, descobri que, se eu renomear o diretório acima da pasta openwrt
, com uma pequena alteração em um arquivo, digamos que wifi.lua
o próximo make (na pasta openwrt
) leva 21 minutos para compilar com sucesso.
No entanto, se eu não renomear o diretório acima da pasta openwrt
, com uma pequena alteração similar no mesmo arquivo, o próximo faz V = 99 levar apenas 3 minutos para compilar com sucesso .
Quando eu renomeio o diretório acima e faço o mesmo acima, o make leva 21 minutos para compilar com sucesso. Com o make V = 99 , posso ver que houve muito mais etapas de compilação em comparação com o caso em que não renomei o diretório principal.
Eu posso ver que a compilação Makefile é muito mais rápida se eu não renomear o diretório principal.
Isso me leva à questão relacionada:
No Linux, a renomeação ou movimentação de um diretório altera os horários dos arquivos em subdiretórios?
Eu sei que o Makefile não constrói um alvo novamente se a hora da modificação do alvo for mais recente que todas as suas dependências.
Eu também estava lendo sobre alguns problemas com o GNU Makefile:
link
O Makefile OpenWrt, supostamente muito mais avançado que o Makefile original do Linux, resolve alguns ou todos esses problemas?
(Para fazer o Makefile compilar mais rápido, eu também tenho o openwrt/dl
como um link simbólico para uma pasta no meu diretório home, para que os pacotes do pacote user-space não precisem ser baixados novamente.)