本資料は、ヘッダーファイル、Cソースファイルの各依存関係を記したMakefileのサンプルになります。
c-top.html is not found or not readable.本資料で使用しているCサンプルソース、ヘッダーファイルは以下の通りです。
main.cからsub1.c, sub2.cの関数を呼び出します。
また、sub1.h, sub2.hも用意してあります。
#ref(): File not found: "01.gif" at page "その他/依存関係を記したMakefileのサンプル"
sub1.c, sub2.c の呼び出し元となる main.c は以下の通りです。
&ref(): File not found: "main.c" at page "その他/依存関係を記したMakefileのサンプル"; (改行コードLF)
#include <stdio.h> #include "sub1.h" #include "sub2.h" int main(void) { sub1_func(); sub2_func(); return 0; }
main.cから呼び出されるsub1_func()のサンプルソースとヘッダーファイルです。
&ref(): File not found: "sub1.h" at page "その他/依存関係を記したMakefileのサンプル"; (改行コードLF)
#ifndef __SUB1_H__ #define __SUB1_H__ extern void sub1_func(void); #endif
&ref(): File not found: "sub1.c" at page "その他/依存関係を記したMakefileのサンプル"; (改行コードLF)
#include <stdio.h> #include "sub1.h" void sub1_func(void) { printf("HELLO!\n"); }
main.cから呼び出されるsub2_func()のサンプルソースとヘッダーファイルです。
&ref(): File not found: "sub2.h" at page "その他/依存関係を記したMakefileのサンプル"; (改行コードLF)
#ifndef __SUB2_H__ #define __SUB2_H__ extern void sub2_func(void); #endif
&ref(): File not found: "sub2.c" at page "その他/依存関係を記したMakefileのサンプル"; (改行コードLF)
#include <stdio.h> #include "sub2.h" void sub2_func(void) { printf("BYE!\n"); }
以下に上記のCサンプルソース、ヘッダーファイルの依存関係を記したMakefileを記します。
&ref(): File not found: "Makefile" at page "その他/依存関係を記したMakefileのサンプル"; (改行コードLF)
# # Sample Makefile # CC = gcc CFLAGS=-O OBJS = main.o sub1.o sub2.o TARGET = sample sample: main.o sub1.o sub2.o $(CC) $(CFLAGS) $(OBJS) -o $(TARGET) main.o: main.c $(CC) -c main.c sub1.o: sub1.c sub1.h $(CC) -c sub1.c sub2.o: sub2.c sub2.h $(CC) -c sub2.c clean: rm -f $(OBJS) $(TARGET)
上記のMakefileを簡単に説明します。
以下に端末からmakeして実行した時のオペレーションを記します。
$ make gcc -c main.c gcc -c sub1.c gcc -c sub2.c gcc -O main.o sub1.o sub2.o -o sample
$ ./sample HELLO! BYE!
$ make clean rm -f main.o sub1.o sub2.o sample
以上、Makefileのサンプルでした。
c-btm.html is not found or not readable.