Esta resposta abordará a questão geral de criar um aplicativo Windows somente de origem (em C). Se você tiver sorte como o OP, poderá encontrar binários pré-compilados.
A primeira coisa a ter em atenção aqui é que não há uma maneira única de criar um aplicativo a partir da fonte. Existem aproximadamente tantas variações quanto diferentes projetos. Dito isto, aqui estão algumas etapas gerais:
Se você tiver sorte, o projeto fornecerá instruções de construção, geralmente dentro do README
arquivo. Ocasionalmente, também pode haver um INSTALL
arquivo ou outra documentação disponível. Se houver, siga as instruções. Eles são sua melhor aposta.
Como já foi dito, infelizmente, é muito difícil reconstruir as etapas de compilação necessárias sem instruções. No entanto, podemos pelo menos fazer uma tentativa de melhor esforço aqui, que funcionará para a maioria dos projetos simples.
Na falta de instruções, a próxima porta de escala é verificar qual ferramenta de compilação é necessária.
Se você encontrar um arquivo com uma extensão .sln
ou .vcxproj
, provavelmente este é um projeto do MSBuild / Visual Studio. Baixe uma cópia do Visual Studio Community ou Express (para C ++), abra esse arquivo de projeto e clique no botão play na barra de ferramentas (ou use o menu build).
Se você encontrar um Makefile
, provavelmente será necessário make
. Mas é aqui que as coisas ficam ainda mais difíceis, pois existem muitos sistemas independentes e incompatíveis que usam make
.
Como ele é direcionado para o Windows, provavelmente usará o MinGW . Faça o download de uma cópia disso, inicie o MSYS no menu Iniciar, navegue ( cd
) para o diretório que contém o seu projeto e execute make
.
Nas raras ocasiões em que é o Cygwin (infelizmente, não há uma maneira fácil de saber, mas se o MinGW criar erros com um erro relacionado ao "posix", esta é uma aposta decente), será necessário instalar o Cygwin . Infelizmente, isso não cria binários nativos do Windows - você terá que iniciar o programa através do Cygwin sempre.
A "ferramenta de construção" pode ser um script personalizado com o nome build.bat
ou similar. Nesse caso, você precisará abri-lo e ver o que há dentro, ou tentar executá-lo e ver quais são os erros. Se você o abrir e GCC
vir menções de , volte para o 2.2.1. MinGW, mas execute o script personalizado em vez de make
.
É possível que não exista nenhuma ferramenta de construção. Se tudo que você encontrar é uma única .c
ou .cpp
arquivo, então provavelmente é bastante simples que você pode fazer uma compilação reta. Esses são, novamente, quase sempre o MinGW ; portanto, faça o download, inicie o shell MSYS, navegue até o diretório e chame um gcc
ou g++
conforme necessário - por exemplo,gcc -o program.exe program.c
É possível que nada disso funcione. Se você recebeu mensagens de erro em qualquer etapa, elas podem conter uma pista do que está faltando. Uma possibilidade é a falta de algumas estruturas ou bibliotecas necessárias - se você quiser, pode fazer o download delas e adicioná-las ao seu ambiente de construção, mas esse normalmente não é um processo trivial e tem tantas variações que não há maneira de cobri-los em uma resposta.
Glossário
Ferramentas de construção
Uma ferramenta de construção permite criar um projeto com muito poucos comandos. Para a maioria dos projetos com mais de um único arquivo de origem, uma ferramenta de construção estará envolvida em algum lugar. Existem várias ferramentas de construção, mas as mais comuns são:
make , usado em qualquer lugar no Linux e cada vez mais comum no Windows. Projetos usando make
geralmente podem ser identificados pela presença de a Makefile
.
O MSBuild é específico do Windows e normalmente é visto em conjunto com o Visual Studio. Geralmente, eles são acompanhados por um arquivo *.sln
ou *.vcxproj
.
Ferramentas
Uma cadeia de ferramentas é o compilador e as ferramentas de suporte. Assim como as ferramentas de construção, existem várias e geralmente são usadas com uma das ferramentas de construção.
MSVC é a cadeia de ferramentas da Microsoft. Essa é a cadeia de ferramentas mais comum para o desenvolvimento nativo do Windows. Isso geralmente é usado com o sistema MSBuild e as compilações geralmente são criadas pelo Visual Studio. No entanto, projetos modernos de MSVC também podem ser usados Makefile
.
GCC ( MinGW ) é uma porta do GCC para Windows. Geralmente usado com make
. Se o projeto é direcionado para o Windows nativamente e possui um Makefile
, provavelmente é para o MinGW-GCC.
O GCC ( Cygwin ) cria um ambiente compatível com POSIX. Isso permite que você compile diretamente a maioria dos programas criados para Linux ou Unix e faça com que funcione diretamente no Windows. Mais recentemente, no Windows 10, o Bash no Ubuntu no Windows é uma alternativa. O GCC é geralmente usado em conjunto com make
.
Estruturas e bibliotecas
Bibliotecas são conjuntos reutilizáveis de código escritos por outras pessoas, dos quais muitos programas dependem para evitar a reinvenção da roda. Você precisa ter essas dependências disponíveis para construir o projeto. Se você tiver sorte, eles serão incluídos no seu download inicial, mas esse nem sempre é o caso.
Estruturas são efetivamente uma coleção de bibliotecas. Muitos projetos usam uma estrutura, da qual você também precisará. Eles geralmente também vêm com seu próprio sistema de compilação, mas listar todos eles seria impossível.
A parte mais difícil é lidar com dependências extras de estrutura e biblioteca. Se, digamos, o projeto usa Qt - você precisará de toda essa bagunça para construí-lo adequadamente. Essa é uma tarefa enorme e, a menos que você tenha experiência anterior, provavelmente é melhor pedir ajuda direta a outras pessoas aqui.