Repolode
tsoding

tsoding/nob.h

Biblioteca C de arquivo único para escrever scripts de build em C, tendo um compilador C como única dependência de build.

Alternativa open source a:CMakeGNU Make

Estrelas
3,329
Forks
215
Issues abertas
85
Último commit
há 3 dias

O que é?

nob.h é uma biblioteca C de arquivo único para escrever receitas de build em C, em vez de usar Make, CMake ou scripts de shell. A ideia, chamada NoBuild, é inicializar o sistema de build de um projeto usando apenas um compilador C: você compila um pequeno programa nob.c uma vez, e esse programa passa a compilar o restante do projeto.

A biblioteca foi feita para ser copiada para um projeto como um único arquivo de header. Como a lógica de build é escrita em C comum, o script pode reutilizar diretamente o código do próprio projeto, e o projeto também pode usar helpers criados para o build. O projeto se descreve como experimental e adequado a projetos C e C++ que buscam builds simples e portáveis, em vez de estruturas complexas de gerenciamento de dependências.

O autor observa que a abordagem se parece mais com escrever scripts de shell em C do que usar um gerador de build completo, por isso é preciso ter familiaridade com C e escrever alguns utilitários por conta própria. Há versões da mesma ideia para C++, Java e Fortran.

Recursos principais

  • 01Distribuída como um único arquivo de header, copiado diretamente para o projeto.
  • 02Exige apenas um compilador C, sem depender de make, CMake ou shell.
  • 03A lógica de build é escrita em C e pode compartilhar código com o projeto.
  • 04Funciona em Linux, macOS, Windows, FreeBSD e outras plataformas com um compilador C.

Casos de uso

  • Compilar projetos C/C++ pequenos ou médios sem instalar make ou CMake.
  • Escrever scripts de build portáveis que funcionem da mesma forma em diferentes sistemas operacionais.
  • Inicializar o build de um projeto C com um único comando do compilador.

Início rápido

  1. 1

    Baixe o único arquivo de cabeçalho, nob.h, do repositório

  2. 2

    Copie nob.h para o seu projeto e comece a usá-lo; consulte a pasta how_to/ para ver exemplos

Antes de usar

  • O autor o descreve como um projeto de pesquisa experimental, sem alegar que seja adequado para algum uso específico.
  • Não é adequado para projetos que dependem de módulos no estilo do CMake e de muitas dependências.
  • Para escrever scripts de build, é preciso ter familiaridade com a implementação das coisas por conta própria em C.
  • Só faz sentido para projetos em C e C++.

Tópicos

Perguntas frequentes

O que é nob.h?
Biblioteca C de arquivo único para escrever scripts de build em C, tendo um compilador C como única dependência de build. nob.h é uma biblioteca C de arquivo único para escrever receitas de build em C, em vez de usar Make, CMake ou scripts de shell. A ideia, chamada NoBuild, é inicializar o sistema de build de um projeto usando apenas um compilador C: você compila um pequeno programa nob.c uma vez, e esse programa passa a compilar o restante do projeto.
nob.h é gratuito? Qual é a licença?
nob.h é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
nob.h ainda é mantido?
Manutenção ativa. O último commit de nob.h foi em 18 de out. de 2026.
Para que posso usar nob.h?
Compilar projetos C/C++ pequenos ou médios sem instalar make ou CMake. Escrever scripts de build portáveis que funcionem da mesma forma em diferentes sistemas operacionais. Inicializar o build de um projeto C com um único comando do compilador.
Como instalar nob.h?
Baixe o único arquivo de cabeçalho, nob.h, do repositório Copie nob.h para o seu projeto e comece a usá-lo; consulte a pasta how_to/ para ver exemplos
Onde consigo nob.h?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/tsoding/nob.h

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados