[{"data":1,"prerenderedAt":278},["ShallowReactive",2],{"$fWh6DjY9Z-dO7qOQgCEnOWjzXw7BHU9AfWATKs6k0_dg":3,"$fqD24-XxJa-b5hGkYyAA1cjRcTD_3cP69vvJVa0KTZcI":265},{"id":4,"author":5,"categories":6,"slugified_categories":8,"description":10,"body":11,"date":259,"dateFormatted":260,"title":261,"image":262,"path":263,"mathfont":264},"blog/blog/makepkg-dependencia-nao-encontrada.md","Heleno Salgado",[7],"Linux",[9],"linux","Aprenda a resolver problemas de dependência não encontrada ao usar o makepkg no Arch Linux, com dicas e soluções práticas.",{"type":12,"value":13,"toc":257},"minimark",[14,23,42,118,128,137,151,156,172,183,203,219,224,227,250,253],[15,16,17,18,22],"p",{},"Recentemente tive que instalar o ",[19,20,21],"strong",{},"Insominia"," no Arch Linux, no entanto o build falhava por não encontrar o pacote nvm, que é uma dependência necessária para o tempo de execução.",[15,24,25,26,29,30,34,35,38,39,41],{},"Em suma, o método convencional não ajudou, então editei o aquivo ",[19,27,28],{},"PKGBUILD"," e comentei as linhas correspondentes ao erro, nas funções ",[31,32,33],"code",{},"prepare()"," e ",[31,36,37],{},"build()",". Pois eu estava absolutamente certo que a dependência estava na máquina, eu poderia, na pior das hipóteses, inserir o caminho completo do nvm nas linhas em que ele era chamado em ",[19,40,28],{},".",[43,44,49],"pre",{"className":45,"code":46,"language":47,"meta":48,"style":48},"language-bash shiki shiki-themes github-light github-dark","$ git clone https://aur.archlinux.org/insomnia.git\n\n$ cd insominia\n\n$ makepkg\n\n$ makepkg --install\n","bash","",[31,50,51,70,77,88,93,101,106],{"__ignoreMap":48},[52,53,56,60,64,67],"span",{"class":54,"line":55},"line",1,[52,57,59],{"class":58},"sScJk","$",[52,61,63],{"class":62},"sZZnC"," git",[52,65,66],{"class":62}," clone",[52,68,69],{"class":62}," https://aur.archlinux.org/insomnia.git\n",[52,71,73],{"class":54,"line":72},2,[52,74,76],{"emptyLinePlaceholder":75},true,"\n",[52,78,80,82,85],{"class":54,"line":79},3,[52,81,59],{"class":58},[52,83,84],{"class":62}," cd",[52,86,87],{"class":62}," insominia\n",[52,89,91],{"class":54,"line":90},4,[52,92,76],{"emptyLinePlaceholder":75},[52,94,96,98],{"class":54,"line":95},5,[52,97,59],{"class":58},[52,99,100],{"class":62}," makepkg\n",[52,102,104],{"class":54,"line":103},6,[52,105,76],{"emptyLinePlaceholder":75},[52,107,109,111,114],{"class":54,"line":108},7,[52,110,59],{"class":58},[52,112,113],{"class":62}," makepkg",[52,115,117],{"class":116},"sj4cs"," --install\n",[119,120,122],"callout",{"type":121},"star",[15,123,124,125,41],{},"O nome do pacote final a ser instalado, depois do build, poderia também ser instalado com: ",[31,126,127],{},"pacman -U nome-do-pacote.tar.zst",[15,129,130,131,133,134,41],{},"Tanto faz ser o Insomia como outro software, por vezes, no momento da construção, uma dependência pode não ser encontrada, apesar de estar devidamente instalada. Sendo assim, poderíamos abrir o arquivo ",[19,132,28],{}," e observar a lista de dependências necessárias, certificar que estão instaladas e proseguir a construção ignorando as dependências com a flag ",[31,135,136],{},"--nodeps",[43,138,140],{"className":45,"code":139,"language":47,"meta":48,"style":48},"$ makepkg --nodeps\n",[31,141,142],{"__ignoreMap":48},[52,143,144,146,148],{"class":54,"line":55},[52,145,59],{"class":58},[52,147,113],{"class":62},[52,149,150],{"class":116}," --nodeps\n",[15,152,153,154,41],{},"Isso deveria resolver o problema, no entanto, pode ocorrer falhas no restante do script que usam aquela dependência não encontrada, como na função ",[31,155,33],{},[15,157,158,159,162,163,165,166,168,169,171],{},"Poderíamos passar esse erro, adicionando a flag ",[31,160,161],{},"--noprepare",", que faz o makepkg ignorar a função ",[31,164,33],{},". Mas o erro segue para a próxima função no ",[19,167,28],{},", a função ",[31,170,37],{},":",[15,173,174,175,178,179,182],{},"E novamente poderíamos passar o erro usando outra flag ",[31,176,177],{},"--nobuild",", isso resolveria o último erro, mas também, o pacote .",[19,180,181],{},"zst"," final para instalação não seria gerado.",[43,184,186],{"className":45,"code":185,"language":47,"meta":48,"style":48},"$ makepkg --nodeps --noprepare --nobuild\n",[31,187,188],{"__ignoreMap":48},[52,189,190,192,194,197,200],{"class":54,"line":55},[52,191,59],{"class":58},[52,193,113],{"class":62},[52,195,196],{"class":116}," --nodeps",[52,198,199],{"class":116}," --noprepare",[52,201,202],{"class":116}," --nobuild\n",[15,204,205,206,208,209,34,211,213,214,34,216,218],{},"Em suma, o método convencional não nos ajudou, então podemos editar o aquivo ",[19,207,28],{}," e comentar as linhas correspondentes ao erro, nas funções ",[31,210,33],{},[31,212,37],{},". Assim podemos retirar as flags ",[31,215,161],{},[31,217,177],{}," que impedem a construção do pacote.",[15,220,221,222,41],{},"Já que resolveu por a mão na massa, você também pode retirar da lista de dependências o nvm, que é a única que o makepkg não consegue encontrar. Assim, não precisará mais da flag ",[31,223,136],{},[15,225,226],{},"E executando o comando novamente, o insomnia, ou outro pacote com problema do mesmo tipo, será compilado com sucesso.",[43,228,230],{"className":45,"code":229,"language":47,"meta":48,"style":48},"$ makepkg\n\n$ makepkg --install\n",[31,231,232,238,242],{"__ignoreMap":48},[52,233,234,236],{"class":54,"line":55},[52,235,59],{"class":58},[52,237,100],{"class":62},[52,239,240],{"class":54,"line":72},[52,241,76],{"emptyLinePlaceholder":75},[52,243,244,246,248],{"class":54,"line":79},[52,245,59],{"class":58},[52,247,113],{"class":62},[52,249,117],{"class":116},[15,251,252],{},"Insomnia instalado com sucesso.",[254,255,256],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":48,"searchDepth":72,"depth":72,"links":258},[],"2025-09-22","21 de setembro de 2025","Corrigindo dependência não encontrada pelo makepkg","http://localhost:3000/images/default-post.webp","/blog/makepkg-dependencia-nao-encontrada",false,[266,273],{"id":267,"author":5,"title":268,"description":269,"path":270,"date":271,"dateFormatted":272,"image":262},"blog/blog/nautilus-gnome-controls-e-google-drive-no-hyprland.md","Configurando o Google Drive no Hyprland com Nautilus e GNOME Control Center","Aparentemente, a maneira mais simples e eficiente de integrar o Google Drive ao gerenciador de arquivos no Hyprland é utilizando componentes do GNOME.","/blog/nautilus-gnome-controls-e-google-drive-no-hyprland","2025-11-20","19 de novembro de 2025",{"id":274,"author":5,"title":275,"description":276,"path":277,"date":259,"dateFormatted":260,"image":262},"blog/blog/loop-infinito-com-iwd.md","Loop infinito do IWD - Conflito","Entenda o conflito do IWD com outros gerenciadores de rede e como resolver o loop infinito de conexão.","/blog/loop-infinito-com-iwd",1764231223093]