Makefileを用いたCのHello Worldプログラムの実行

2022-03-20プログラミング

はじめに

まずは能書き垂れる前に、サンプルソースをさっさと動かします。

環境構築

Ubuntu18.04LTS

# install make package
sudo apt-get install make

準備するファイル

~/sample/
    |-Makefile
    |-main.c
    |-hello.h
    |-hello.c
# mkdir project dir under ~/ 
mkdir sample
cd sample
touch Makefile main.c hello.h hello.c
hello: main.c hello.c hello.h
	gcc -I .  main.c hello.c hello.h -o hello

gccコンパイラは、ヘッダファイルをホストPCの /usr/include 下で探すが、

./ 下のオリジナルのヘッダファイルは見てくれない。なので -I オプションで現在のディレクトリ . を指定する。

#include "hello.h"

int main() {
    hello();
}
#ifndef HELLO_H
#define HELLO_H

void hello();

#endif
#include <stdio.h>
#include "hello.h"

void hello() {
    puts("Hello World");
}

コンパイル

コンパイルします。

$ make
gcc -I .  main.c hello.c hello.h -o hello

実行後、こんなにたくさんファイルができました。

$ ls
hello  hello.c  hello.h  hello.h.gch  main.c  main.o  Makefile

実行

$ ./hello 
Hello World

2022-03-20プログラミング

Posted by tech-biz-creator