explication header
This commit is contained in:
100
Makefile
100
Makefile
@@ -149,7 +149,8 @@ re: fclean all
|
||||
# ranlib [322 G]
|
||||
|
||||
## 3 - fichiers .h [335 G]
|
||||
# ecrir un header []
|
||||
# a quoi sert un header []
|
||||
# ecrire un header []
|
||||
# comment ca se compile []
|
||||
|
||||
## 4 - ecrire un make file... []
|
||||
@@ -334,7 +335,7 @@ re: fclean all
|
||||
## ----------------
|
||||
|
||||
# - - - - - - - - - - - -
|
||||
# ecrire un header
|
||||
# a quoi sert un header
|
||||
# - - - - - - - - - - - -
|
||||
|
||||
# si on utilise une librairie c'est parce qu'on peut avoir
|
||||
@@ -360,69 +361,82 @@ re: fclean all
|
||||
# fonctions de la librairie, gcc s'occupera de l'expandre
|
||||
# a la precompilation
|
||||
#
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
|
||||
# - - - - - - - - -
|
||||
# ecrire un header
|
||||
# - - - - - - - - -
|
||||
|
||||
# [ft_putchar.c]
|
||||
# # #include "libtest.h"
|
||||
# #
|
||||
# # void ft_putchar(char c)
|
||||
# # {
|
||||
# # write(1, &c, 1);
|
||||
# # }
|
||||
#
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# [main.c]
|
||||
# # #include "libtest.h"
|
||||
# #
|
||||
# # int main()
|
||||
# # {
|
||||
# # ft_putchar('0');
|
||||
# # return (0);
|
||||
# # }
|
||||
#
|
||||
# [libetest.h]
|
||||
# # # ifndef LIBTEST_H
|
||||
# # # define LIBTEST_H
|
||||
# #
|
||||
# # #include <unistd.h>
|
||||
# #
|
||||
# # void ft_putchar(char c);
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# # # endif
|
||||
#
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# en tete de chaque fichier de fonctions on ecrit
|
||||
# l'include de la librairie, comme un include classique,
|
||||
# precede d'un #, mais avec le nom de la librairie entre
|
||||
# guillemets et non pas entre signes comparateurs
|
||||
#
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# #
|
||||
# dans le fichier de la librairie on ajoute les includes
|
||||
# dont on peut avoir besoin pour que la librairie ou des
|
||||
# fonctions auont besoin, et les prototypes des fonctions
|
||||
#
|
||||
# on entoure toutes ces infos par une definition, afin
|
||||
# de proteger le .h d'etre expand plusieurs fois dans
|
||||
# un fichier
|
||||
|
||||
# - - - - - - - - - - - -
|
||||
# comment ca se compile
|
||||
# - - - - - - - - - - - -
|
||||
|
||||
# au moment de la compilation il faut indiquer a gcc ou
|
||||
# se trouve le fichier .h avec le flag -I
|
||||
#
|
||||
# par exemple pour l'architecture de dossier suivante :
|
||||
#
|
||||
# # file
|
||||
# # -> main.c
|
||||
# # -> ft_putchar.c
|
||||
# # -> libtest.h
|
||||
#
|
||||
# il faut ecrire :
|
||||
#
|
||||
# # gcc main.c ft_putchar.c -I.
|
||||
#
|
||||
# et si la compilation utilise une librairie, par exemple
|
||||
# si on met la fonction ft_putchar.c dans une librairie :
|
||||
#
|
||||
# # gcc -c ft_putchar.c
|
||||
# # (donne ft_putchar.o)
|
||||
# # ar rc libtest.a ft_putchar.o
|
||||
#
|
||||
# on peut alors compiler avec la librairie .a et le
|
||||
# fichier .h :
|
||||
#
|
||||
# # gcc main.c -I. -L. -ltest -o test
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# qui sort l'executable "test"
|
||||
|
||||
## ----------------------------------------------------
|
||||
## 4 - ecrire un make file pour aider a la compilation
|
||||
|
||||
Reference in New Issue
Block a user