J'ai téléchargé un programme simple de Windows mort de GitHub ( ce si elle est pertinente). Je l'ai téléchargé au format ZIP, mais je ne sais pas comment l'installer. C'est écrit en C, je pense. Ai-je besoin d'un compilateur? (Visual Studio?) Y a-t-il quelque chose de simple qui me manque?
44
Réponses:
Github est principalement utilisé par les programmeurs pour collaborer à des projets. L'option 'Download ZIP' télécharge une copie du code source sur votre ordinateur. Ce habituellement 1 ne contient pas une copie des fichiers exécutables utilisables / binaires compilés (c. -à- ; fichiers exe)
Releases , est une fonctionnalité de Github destinée à l’envoi de logiciels aux utilisateurs finaux (qui ne sont généralement pas intéressés par le codage proprement dit). Les versions sont accompagnées de notes de publication et de liens permettant de télécharger le logiciel ou le code source. C’est le premier endroit où vous devriez vérifier les fichiers binaires .
Dans votre cas, la page des versions propose des téléchargements et des fichiers d'installation.
Cependant, de nombreux projets n’auront aucune version (en particulier pour Windows), auquel cas vous pouvez effectuer l’une des opérations suivantes:
Rechercher des fichiers binaires ailleurs sur Internet. Habituellement, les moteurs de recherche comme DuckDuckGo (ou Google , si vous préférez) trouveront facilement ce que vous voulez. Essayez de chercher
<application name> for Windows
ou<application name> exe
.Compilez-le vous-même. Vous devez avoir au moins quelques connaissances de base du langage de programmation pour pouvoir le faire. Là encore, les moteurs de recherche peuvent être extrêmement utiles. Essayez de chercher
compile <application name> on Windows
ouMinGW compile <application name>
.Ici, je vais passer en revue les bases de la compilation des utilitaires pour Widnows:
Télécharger MinGW . Personnellement, je préfère ce paquet car il vient avec boost (utilisé par plusieurs applications) et un shell cool. Il est également livré avec
git
, ce qui peut s'avérer très utile si vous souhaitez compiler des fichiers hébergés sur Github ou d'autres référentiels de contrôle de version Git sans avoir à télécharger séparément le code source.Exécutez les commandes suivantes dans
cmd
oupowershell
:cd c:\sources\hello
: Modifiez le répertoire pour indiquer où se trouve le ou les fichiers source.g++ helloworld.cpp -o helloworld.exe
: voicihelloworld.cpp
le nom du fichier source principal ethelloworld.exe
le nom de l'exécutable compilé.-o
commutateur:g++ helloworld.cpp foo.cpp -o helloworld.exe
.c
au lieu de.cpp
et vous devriez utiliser lagcc
commande au lieu deg++
. Le reste est plus ou moins identiqueprobablementaussi vous pencher sur les makefiles. Ce message Stack Overflow concerne les makefiles en général, et celui-ci nous explique comment les utiliser avec MinGW. Si un projet contient un fichier make, essayez-le avant de compiler manuellement le source.helloworld.exe
.1 Remarque: Il peut parfois exister un dossier appelé
bin
parmi les fichiers téléchargés, qui devrait contenir des exécutables / fichiers binaires utilisablesVoir aussi Cygwin et GOW si vous voulez des utilitaires de ligne de commande GNU / Linux sous Windows. Je fais un peu la dernière version de quelques executables utiles disponibles en téléchargement ici .
Pour en savoir plus:
http://www.mingw.org/wiki/MinGW_for_First_Time_Users_HOWTO
https://gcc.gnu.org/onlinedocs/index.html#dir
https://stackoverflow.com/questions/22873884/how-do-i -run-configure-with-mingw
la source
Vous regardez autour de vous et trouvez le programme d'installation sur la page de publication . Bien sûr, vous pouvez compiler la source, mais je ne pense pas que ce soit ce que vous voulez.
la source
Les fichiers .c et .h sont du code source C.
Vous devrez installer un compilateur C tel que Visual Studio, tcc ou quelque chose de similaire, charger le projet, puis le compiler pour l'exécuter.
À défaut, le projet a une page de publication ( ici ) qui vous donnera accès à une version précompilée pour vous faire gagner du temps et des efforts.
la source
Cette réponse abordera la question générale de la création d’une application Windows source uniquement (en C). Si vous êtes chanceux comme l'OP, vous pourrez peut-être trouver des fichiers binaires précompilés.
La première chose à prendre en compte ici est qu'il n'y a pas un seul moyen de créer une application à partir des sources. Il y a environ autant de variantes que de projets. Cela dit, voici quelques étapes générales:
Si vous avez de la chance, le projet fournira des instructions de construction, généralement dans le
README
fichier. De temps en temps, il peut également y avoir unINSTALL
fichier ou une autre documentation disponible. Si ceux-ci sont disponibles, suivez les instructions. Ils sont votre meilleur pari.Comme d’autres l’ont dit, il est malheureusement très difficile de reconstruire les étapes de construction requises sans instructions. Cependant, nous pouvons au moins faire un effort au mieux, ce qui fonctionnera pour la plupart des projets simples.
En l'absence d'instructions, le prochain point de contact est de vérifier quel outil de construction est requis.
Si vous trouvez un fichier avec une extension
.sln
ou.vcxproj
, il s’agit probablement d’un projet MSBuild / Visual Studio. Téléchargez une copie de Visual Studio Community ou Express (pour C ++), ouvrez-y le fichier de projet et cliquez sur le bouton de lecture de la barre d'outils (ou utilisez le menu de génération).Si vous trouvez un
Makefile
, cela va probablement nécessitermake
. Mais c’est là que les choses deviennent encore plus difficiles, car de nombreux systèmes indépendants et incompatibles sont utilisésmake
.Comme il est destiné à Windows, il utilisera probablement MinGW . Téléchargez-en une copie, lancez MSYS à partir du menu Démarrer, accédez
cd
au répertoire contenant votre projet, puis exécutez-lemake
.Dans les rares cas où il s’agit plutôt de Cygwin (il n’existe malheureusement pas de moyen facile de le savoir, mais si MinGW génère une erreur liée à "posix", il s’agit là d’un pari décent), vous devrez installer Cygwin à la place. Malheureusement, cela ne crée pas de fichiers binaires Windows natifs - vous devrez lancer le programme via Cygwin à chaque fois.
L'outil de génération peut être un script personnalisé portant le nom
build.bat
ou similaire. Dans ce cas, vous devrez soit l'ouvrir et voir ce qu'il contient, soit essayer de l'exécuter et voir quelles sont les erreurs. Si vous l'ouvrez et que vous voyez des mentions surGCC
, remontez au 2.2.1. Étape MinGW mais exécutez le script personnalisé à la place demake
.Il est possible qu'il n'y ait pas d'outil de construction du tout. Si tout ce que vous rencontrez est un fichier
.c
ou un.cpp
fichier, il est probablement assez simple pour que vous puissiez effectuer une compilation directe. Encore une fois, ce sont presque toujours MinGW , alors téléchargez-le, lancez le shell MSYS, accédez au répertoire et appelez-legcc
oug++
au besoin - par exemplegcc -o program.exe program.c
Il est possible qu'aucune de ces solutions ne fonctionne. Si vous recevez des messages d'erreur à n'importe quelle étape, ils peuvent contenir un indice sur ce qui manque. Une possibilité est que vous manquiez de certains frameworks ou bibliothèques requis - si vous le souhaitez, vous pouvez essayer de les télécharger et de les ajouter à votre environnement de construction, mais ce n'est généralement pas un processus trivial et comporte de nombreuses variantes. façon de les couvrir dans une réponse.
Glossaire
Construire des outils
Un outil de construction vous permet de construire un projet avec très peu de commandes. Pour la plupart des projets comportant plusieurs fichiers sources, un outil de construction sera impliqué quelque part. Il existe plusieurs outils de construction, mais les plus courants sont les suivants:
make , utilisé partout sous Linux et de plus en plus répandu sous Windows. Les projets utilisant
make
peuvent généralement être identifiés par la présence d'unMakefile
.MSBuild est spécifique à Windows et est généralement associé à Visual Studio. Ceux-ci seront généralement accompagnés d'un
*.sln
ou d' un*.vcxproj
fichier.Toolchains
Un toolchain est le compilateur et les outils de support. Tout comme les outils de construction, il en existe plusieurs, et ils sont généralement utilisés avec l'un des outils de construction.
MSVC est la chaîne d'outils de Microsoft. C'est la chaîne d'outils la plus courante pour le développement natif Windows. Cela est généralement utilisé avec le système MSBuild et les générations sont généralement créées via Visual Studio. Cependant, les projets MSVC modernes peuvent
Makefile
également être utilisés .GCC ( MinGW ) est un port de GCC pour Windows. Habituellement utilisé avec
make
. Si le projet cible Windows de manière native et qu'il en possède unMakefile
, c'est probablement pour MinGW-GCC.GCC ( Cygwin ) crée un environnement compatible POSIX. Cela vous permet de compiler directement la plupart des programmes écrits pour Linux ou Unix et de le faire fonctionner directement sous Windows. Plus récemment dans Windows 10, Bash sur Ubuntu sous Windows est une alternative. GCC est généralement utilisé en conjonction avec
make
.Cadres et bibliothèques
Les bibliothèques sont des ensembles de codes réutilisables écrits par d'autres personnes, sur lesquels de nombreux programmes s'appuient pour éviter de réinventer la roue. Vous devez disposer de ces dépendances pour pouvoir construire le projet. Si vous avez de la chance, ils seront inclus dans votre téléchargement initial, mais ce n'est pas toujours le cas.
Les frameworks sont en réalité une collection de bibliothèques. De nombreux projets utilisent un seul framework dont vous aurez également besoin. Ceux-ci viennent souvent avec leur propre système de construction aussi, mais les lister tous serait impossible.
La partie la plus difficile concerne les dépendances supplémentaires du framework et de la bibliothèque. Si, par exemple, le projet utilise Qt - alors vous aurez besoin de tout ce gâchis pour le construire correctement. Il s’agit d’une tâche gigantesque et, à moins que vous n’ayez de l’expérience préalable, il est probablement préférable de demander à d’autres personnes de vous aider directement ici.
la source
MINGW_PREFIX = $(shell which gcc | awk -F/bin/ '{ printf $$1 }')
:)