ool2.hР#ifdef _MYTOOL_2_HР#define _MYTOOL_2_HРvoid mytool2_print(char *print_str);Р#endifРmytool1.cР#include <stdio.h>Р#include"mytool1.h"Рvoid mytool1_print(char *print_str){Р?printf("This is mytool1 print %s\n",print_str);Р}Рmytool2.cР#include <stdio.h>Р#include"mytool2.h"Рvoid mytool2_print(char *print_str){Р?printf("This is mytool2 print %s\n",print_str);Р}Рmain.cР/*main.c*/Р#include"mytool1.h"Р#include"mytool2.h"Рint main(int argc,char**argv){Р?mytool1_print("hello");Р?mytool2_print("hello");Р?return 0;Р}РMakefileРmain:main.o mytool1.o mytool2.oР?gcc -o main main.o mytool1.o mytool2.oРmain.o:main.c mytool1.h mytool2.hР?gcc -c main.cРmytool1.o:mytool1.c mytool1.hР?gcc -c mytool1.cРmytool2.o:mytool2.c mytool2.hР?gcc -c mytool2.cР.PHONY:cleanРclean:Р?rm -f main main.o mytool1.o mytool2.o