[LINUX] Faisons un Makefile et construisons-le (super débutant)

Au milieu de procéder avec le livre d'introduction de C (pas de progrès)

On dirait combien de fois j'ai été présenté, mais je fais ça

[Introduction au langage C - Des connaissances de base à l'essence de l'ordinateur](https://www.amazon.co.jp/C%E8%A8%80%E8%AA%9E%E6%9C%AC%E6%A0 % BC% E5% 85% A5% E9% 96% 80-% E5% 9F% BA% E7% A4% 8E% E7% 9F% A5% E8% AD% 98% E3% 81% 8B% E3% 82% 89% E3% 82% B3% E3% 83% B3% E3% 83% 94% E3% 83% A5% E3% 83% BC% E3% 82% BF% E3% 81% AE% E6% 9C% AC% E8% B3% AA% E3% 81% BE% E3% 81% A7-% E7% A8% AE% E7% 94% B0-% E5% 85% 83% E6% A8% B9 / dp / 4774196169)

make……?makefile? Ce n'est pas seulement une compilation comme un livre d'introduction courant dans la rue, mais un makefile est créé et compilé, donc c'est une forme proche de la pratique. (Il semble que)

J'étais ignorant

Même si j'avais effectivement fait la compilation avec make, j'ai continué à lire et j'ai pensé: "Je renomme juste le fichier exécutable, donc je n'ai pas besoin de me soucier de créer un Makefile?" Quand j'ai marmonné sur Twitter, il y avait un Tsukkomi reconnaissant utile pour les grands projets avec des centaines et des milliers de fichiers sources.

C'est assez embarrassant que j'aurais dû être redevable de faire sur le terrain jusqu'à présent (bien que ce soit environ six mois), mais je ne savais pas comment l'écrire ni quel genre de mérite cela aurait.

Comment écrire un Makefile

Makefile.hoge


PROGRAM = hoge
OBJS    = hoge.o
SRCS    = $(OBJS:%.o=%.c)
CC      = gcc
CFLAGS  = -g -Wall
LDFLAGS =

$(PROGRAM):$(OBJS)
     $(CC) $(CFLAGS) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LDLIBS)

Il semble y avoir d'autres façons d'écrire un Makefile, donc j'ai encore besoin d'étudier ...

Construire avec Makefile

$ make -f Makefile.hoge

Le processus de construction ressemble à ceci

gcc -g -Wall -c -o hoge.o hoge.c
gcc -g -Wall -o hoge hoge.o

Maintenant que le fichier exécutable hoge est créé, il peut être exécuté comme suit.

$ ./hoge

Résumé

・ Makefile est pratique pour le développement à grande échelle ・ Différents styles d'écriture

…… Mais, il existe différentes manières d'écrire make, mais même si vous google, le livre est [Oraily book](https://www.amazon.co.jp/GNU-Make-%E7%AC%AC3%E7%89% 88-Robert-Mecklembourg / dp / 4873112699 / ref = asc_df_4873112699 /? Tag = jpo-22 & linkCode = df0 & hvadid = 295678107984 & hvpos = 1o2 & hvnetw = g & hvrand = 26528690058319140 & hvq hv = 26528690058319140 & hvqmtw = -523848454026 & psc = 1 & th = 1 & psc = 1) Que signifie sortir uniquement? Est-ce mal de le découvrir?

Recommended Posts

Faisons un Makefile et construisons-le (super débutant)
Écrivons un programme Python et exécutons-le
Essayez de créer un jeu simple avec Python 3 et iPhone
Créons une application Mac avec Tkinter et py2app
[Super facile] Faisons un LINE BOT avec Python.
Mémo Un débutant a essayé de créer un environnement Java et de le traduire en japonais sur Ubuntu 18.04.2 LTS.
Faisons un robot Discord.
Associez Python Enum à une fonction pour la rendre appelable
Faisons une rumba distante [Matériel]
Faisons une rumba distante [Logiciel]
Faisons une interface graphique avec python.
Faisons un service de vente au comptant 2
Faisons une rupture de bloc avec wxPython
Faisons un service de vente au comptant 1
Construisez TOPPERS / ASP3 et essayez-le
Faites la programmation Let et Let's One-Line
Créez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 4
Faisons un graphe avec python! !!
Faisons un spacon avec xCAT
Faisons un service de vente au comptant 3
2.Faites un arbre de décision à partir de 0 avec Python et comprenez-le (2. Bases du programme Python)
[Mémo personnel] Obtenez des données sur le Web et faites-en un DataFrame
Comment rendre le nom du conteneur accessible dans Docker en tant que sous-domaine
Créez un arbre de décision à partir de 0 avec Python et comprenez-le (4. Structure des données)
Construisons une méthode de propagation probabiliste (Python)
Faisons un jeu de shiritori avec Python
[Développement à distance] Commençons par le faire !! (Pratique 1)
Faisons la voix lentement avec Python
Faisons un langage simple avec PLY 1
Faisons un site multilingue en utilisant flask-babel
Créez un framework Web avec Python! (1)
Faisons une IA à trois yeux avec Pylearn 2
Faisons un calcul de combinaison avec Python
Faisons un bot Twitter avec Python!
Créez un framework Web avec Python! (2)
Faisons un plug-in backend pour Errbot
Fabriquez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 3
Transformez un programme Python en démon et exécutez-le automatiquement au démarrage du système d'exploitation
Faisons une application qui affaiblit les nerfs avec Vue.js et Django-Rest-Framework [Partie 3] ~ Implémentation de la faiblesse nerveuse ~
Générez un SSID et un mot de passe, convertissez-le en code QR et lancez-le dans Slack.
Créons une application qui affaiblit les nerfs avec Vue.js et Django-Rest-Framework [Partie 2] ~ Configuration de Vue ~
Faisons une application qui affaiblit les nerfs avec Vue.js et Django-Rest-Framework [Partie 1] ~ Django setup ~
Faisons une application qui affaiblit les nerfs avec Vue.js et Django-Rest-Framework [Partie 6] ~ Authentification utilisateur 2 ~
Faisons une application qui affaiblit les nerfs avec Vue.js et Django-Rest-Framework [Partie 5] ~ Authentification des utilisateurs ~
Notez que j'étais accro à la configuration de TensowFlow
Créez un chat bot et entraînez-vous à être populaire.
Créez un environnement virtuel avec pyenv et venv
Remplaçons UWSC par Python (5) Faisons un robot
Faisons un module pour Python en utilisant SWIG
Les débutants en Python ont créé un chat BOT alors j'ai essayé de résumer comment le faire