Automatize seus projetos com Premake

🚀 Gere facilmente arquivos para o comando make, Visual Studio, Xcode e entre outros.


Automatize seus projetos com Premake


Nós já falamos de uma ferramenta similar que é o Xmake, o Premake é similar, mas automatiza arquivos para IDEs como Visual Studio e Xcode.

Premake é uma ferramenta de automação de build open-source que gera arquivos de projeto (como Makefiles, Visual Studio, Xcode etc.) a partir de scripts escritos em Lua.

Premake automatiza a criação de projetos para múltiplas plataformas e IDEs. Ele não compila diretamente, mas gera os arquivos de build apropriados para ferramentas como:

  • make (GNU)
  • Visual Studio
  • Xcode
  • GNU Make
  • Code::Blocks
  • CMake (indiretamente, com wrappers)

Útil principalmente em projetos C/C++ multiplataforma.

As versões possuem configurações diferentes nos arquivos premakeNUM.lua, ou seja, um premake4.lua não é compatível com o premake5.lua.


Instalação

No Windows já há a versão 5 disponível para WinGet, basta rodar:

winget install --id=Premake.Premake.5.Beta  -e

No entanto, nem todas as distros GNU/Linux possuem a versão mais recente nos repositórios, no Ubuntu, por exemplo, só há versão 4, exemplo de instalação:

sudo apt install premake4

Mas, você pode clonar, compilar e instalar direto do código fonte:

sudo apt install git build-essential
git clone --depth=1 https://github.com/premake/premake-core.git
cd premake-core
make -f Bootstrap.mak linux
sudo cp bin/release/premake5 /usr/local/bin/
premake5 --version

Utilização

O procedimento para utilizar o Premake pode diferir dependendo da versão. Exemplo de criação de projeto com Premake4:

mkdir -p MeuProjeto/src
cd MeuProjeto
vim src/main.cpp # Hello, World!

Crie o arquivo para o Premake4, ex.: vim premake4.lua

solution "MeuProjeto"
   configurations { "Debug", "Release" }

project "MeuApp"
   language "C++"
   kind "ConsoleApp"
   location "build"
   files { "src/**.cpp", "include/**.hpp" }
   includedirs { "include" }

configuration "Debug"
   targetdir "bin/Debug"

configuration "Release"
   targetdir "bin/Release"

Agora gere com o comando:

premake4 gmake # Unix

E depois é só compilar e rodar:

make
./bin/Debug/MeuApp

Versão 5

Crie um arquivo de nome: premake5.lua e inclua o código abaixo

Exemplo básico:

workspace "MeuProjeto"
   configurations { "Debug", "Release" }
   language "C++"
   location "build"

project "MeuApp"
   kind "ConsoleApp"
   files { "src/**.cpp", "include/**.h" }
   includedirs { "include" }
   targetdir "bin/%{cfg.buildcfg}"

Gerar arquivos para uma IDE

premake5 vs2022       # Visual Studio 2022
premake5 gmake2       # Makefiles para Linux
premake5 xcode4       # Xcode

Compilar

  • Visual Studio: abra .sln e compile.
  • Linux:
premake5 gmake2
cd build
make config=release

Para mais informações acesse os links abaixo e o help:


compiladores gcc visualstudio cmake make


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!