J'ai téléchargé un programme Windows très simple depuis GitHub ( cette s'il y a lieu). Je l'ai téléchargé sous forme de fichier ZIP, mais je n'arrive pas à comprendre comment l'installer. Il est écrit en C, je crois. Ai-je besoin d'un compilateur (Visual Studio ?) ? Y a-t-il quelque chose de simple qui m'échappe ?
Réponses
Trop de publicités?Vous cherchez et trouvez le programme d'installation sur le site page de publication . Bien sûr, vous pourriez compiler les sources, mais je ne pense pas que ce soit ce que vous voulez.
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 et le compiler pour l'exécuter.
A défaut, le projet dispose d'une page de publication ( aquí ) qui vous permettra d'accéder à une version précompilée afin de vous faire gagner du temps et de l'énergie.
Github est principalement utilisé par les programmeurs pour collaborer sur des projets. L'option "Télécharger ZIP" permet de télécharger une copie du code source sur votre ordinateur. Cette option généralement 1 ne contient pas de copie des exécutables/binaires compilés utilisables (c'est-à-dire des fichiers exe)
Communiqués est une fonctionnalité de Github permettant d'envoyer des 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 version et de liens permettant de télécharger le logiciel ou le code source. C'est le premier endroit où vous devez vérifier la présence de binaires. .
Dans votre cas, le page des communiqués propose des téléchargements et des fichiers d'installation.
Cependant, de nombreux projets n'ont pas de version (en particulier pour Windows), auquel cas vous pouvez faire l'une des choses suivantes :
-
Recherchez des binaires ailleurs sur l'internet. En général, les moteurs de recherche comme Canard enchaîné (ou Google Si vous préférez, vous trouverez facilement ce que vous cherchez. Essayez de chercher
<application name> for Windows
o<application name> exe
. -
Compilez-le vous-même. Pour ce faire, vous devez avoir au moins une connaissance de base du langage de programmation. Là encore, les moteurs de recherche peuvent être massivement utile. Essayez de rechercher
compile <application name> on Windows
oMinGW compile <application name>
.Je vais ici présenter les bases de la compilation d'utilitaires pour Windows :
-
Télécharger MinGW . Je suis personnellement favorable à cette parce qu'il est livré avec boost (que plusieurs applications utilisent) et un Shell sympa. Il contient également
git
ce qui peut s'avérer très utile si vous souhaitez compiler des fichiers hébergés sur Github ou d'autres dépôts de contrôle de version Git sans avoir à télécharger séparément les sources. -
Exécutez les commandes suivantes dans
cmd
opowershell
:cd c:\sources\hello
: Changez le répertoire à l'endroit où se trouve le(s) fichier(s) source(s).g++ helloworld.cpp -o helloworld.exe
: icihelloworld.cpp
est le nom du fichier source principal, ethelloworld.exe
est le nom de l'exécutable compilé.- Si vous devez compiler plusieurs fichiers, énumérez-les avant le fichier
-o
commutateur :g++ helloworld.cpp foo.cpp -o helloworld.exe
- Voici les instructions pour C++. Si vous avez affaire à des applications programmées en C, l'extension du fichier sera
.c
au lieu de.cpp
et vous devez utiliser legcc
au lieu deg++
. Le reste est plus ou moins identique - Notez que vous devrez peut-être spécifier davantage d'arguments de ligne de commande afin de compiler un exécutable qui fonctionne correctement. La page du projet contient généralement ces informations.
- Vous pouvez également
probablementIl faut absolument se pencher sur les makefiles. この L'article de Stack Overflow porte sur les makefiles en général, et celui-ci nous explique comment les utiliser avec MinGW. Si un projet est accompagné d'un fichier makefile, essayez-le avant de compiler manuellement les sources. - Vous devriez maintenant être en mesure d'exécuter
helloworld.exe
.
-
Remarque : La plupart des projets sont accompagnés d'un fichier README. Ces fichiers contiennent des informations importantes concernant la compilation et l'exécution d'un logiciel. En les lisant, vous éviterez bien des tracas inutiles.
-
1 Note : Il peut arriver qu'il y ait un dossier appelé bin
parmi les fichiers téléchargés, qui devraient contenir des exécutables/binaires utilisables
Voir aussi Cygwin y GOW si vous souhaitez utiliser les utilitaires de ligne de commande GNU/Linux sous Windows. Je mets à disposition la dernière version de quelques exécutables utiles à télécharger. aquí .
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
Cette réponse traitera de la question générale de la construction d'une application Windows à source unique (en C). Si vous avez de la chance comme le PO, vous pourrez peut-être trouver des binaires précompilés.
La première chose à savoir est qu'il n'existe pas de méthode unique pour créer une application à partir des sources. Il existe à peu près autant de variantes qu'il y a de projets différents. 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 fichier
README
fichier. Occasionnellement, il peut également y avoir unINSTALL
ou toute autre documentation disponible. Si ces documents sont disponibles, suivez les instructions. C'est la meilleure solution.Comme d'autres l'ont dit, il est malheureusement très difficile de reconstituer les étapes de construction requises sans instructions. Cependant, nous pouvons au moins faire un effort, qui fonctionnera pour la plupart des projets simples.
-
En l'absence d'instructions, la prochaine étape consiste à vérifier quel outil de construction est nécessaire.
-
Si vous trouvez un fichier avec un
.sln
o.vcxproj
il s'agit probablement d'un projet MSBuild/Visual Studio. Téléchargez une copie de Communauté Visual Studio ou Express (pour C++), ouvrez ce fichier de projet et cliquez sur le bouton play dans la barre d'outils (ou utilisez le menu build). -
Si vous trouvez un
Makefile
Pour ce faire, il faudra probablementmake
. Mais c'est là que les choses deviennent encore plus difficiles, car il existe un grand nombre de systèmes indépendants et incompatibles qui utilisent la technologiemake
.-
Puisqu'il est destiné à Windows, il utilisera probablement la fonction MinGW . Téléchargez une copie de ce logiciel, lancez MSYS à partir de votre menu de démarrage, naviguez (
cd
) dans le répertoire qui contient votre projet, et exécutezmake
. -
Dans les rares cas où il s'agit de Cygwin (il n'y a malheureusement pas de moyen facile de le savoir, mais si la compilation de MinGW se solde par une erreur liée à "posix", il y a fort à parier que c'est le cas), il vous faudra installer Cygwin au lieu de cela. Malheureusement, cela ne permet pas de créer des binaires Windows natifs -- vous devrez lancer le programme via Cygwin à chaque fois.
-
-
L'"outil de construction" pourrait être un script personnalisé du nom de
build.bat
ou similaire. Dans ce cas, vous devrez soit l'ouvrir et voir ce qu'il contient, soit essayer de le faire fonctionner et voir quelles sont les erreurs. Si vous l'ouvrez et que vous voyez des mentions deGCC
Pour ce faire, revenez à l'étape 2.2.1. MinGW mais lancez le script personnalisé au lieu demake
.
-
-
Il est possible qu'il n'y ait pas d'outil de construction du tout. Si tout ce que vous rencontrez est un simple
.c
o.cpp
il est probablement assez simple pour que vous puissiez le compiler directement. Il s'agit, encore une fois, presque toujours de MinGW Téléchargez-le, lancez le Shell de MSYS, naviguez jusqu'au répertoire et invoquez l'un ou l'autre des éléments suivantsgcc
og++
si nécessaire -- par exemplegcc -o program.exe program.c
-
Il est possible qu'aucune de ces mesures ne fonctionne. Si vous avez reçu des messages d'erreur à l'une ou l'autre étape, ils peuvent contenir un indice sur ce qui manque. Une possibilité est qu'il vous manque certains frameworks ou bibliothèques nécessaires -- si vous vous en sentez capable, 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 il y a tellement de variations qu'il n'y a aucun moyen de les couvrir dans une réponse.
Glossaire
Outils de construction
A outil de construction vous permet de construire un projet avec très peu de commandes. Pour la plupart des projets comportant plus d'un seul fichier source, un outil de construction sera impliqué quelque part. Il existe plusieurs outils de construction, mais les plus courants sont les suivants :
-
faire Il s'agit d'un système qui est utilisé partout sous Linux et qui est de plus en plus courant 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. Ils sont généralement accompagnés d'un
*.sln
o*.vcxproj
fichier.
Chaînes d'outils
A chaîne d'outils est le compilateur et les outils qui l'accompagnent. 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. Il s'agit de la chaîne d'outils la plus courante pour le développement natif de Windows. Elle est généralement utilisée avec le système MSBuild, et les builds sont généralement créés via Visual Studio. Cependant, les projets MSVC modernes puede utiliser
Makefile
aussi. -
CCG ( MinGW ) est un portage de GCC pour Windows. Il est généralement utilisé avec
make
. Si le projet est destiné à Windows en mode natif et qu'il dispose d'unMakefile
c'est probablement pour MinGW-GCC. -
CCG ( Cygwin ) crée un environnement compatible avec POSIX. Cela vous permet de compiler directement la plupart des programmes écrits pour Linux ou Unix et de les faire fonctionner directement sous Windows. Plus récemment dans Windows 10, Bash sur Ubuntu sur Windows est une alternative. Le GCC est généralement utilisé en conjonction avec
make
.
Cadres et bibliothèques
Bibliothèques sont des ensembles réutilisables de codes écrits par d'autres personnes, dont dépendent de nombreux programmes pour éviter de réinventer la roue. Vous devez disposer de ces dépendances pour construire le projet. Si vous avez de la chance, elles seront incluses dans votre téléchargement initial, mais ce n'est pas toujours le cas.
Cadres sont en fait une collection de bibliothèques. De nombreux projets utilisent un cadre, dont vous aurez également besoin. Ceux-ci sont souvent accompagnés de leur propre système de construction, mais il serait impossible de les énumérer tous.
La partie la plus difficile est de gérer les dépendances supplémentaires du cadre et de la bibliothèque. Si, par exemple, le projet utilise Qt -- Il vous faudra alors tout ce bazar pour le construire correctement. Il s'agit d'une entreprise gigantesque, et à moins que vous n'ayez une expérience préalable, il est probablement préférable de demander de l'aide directe à d'autres personnes.