【Windows10 WSL2/Ubuntu 20.04 LTS】gcc, make などの開発ツールをインストールして使う

スポンサーリンク

前の記事で、Windows10のWSL2に「Ubuntu 20.04 LTS」をインストールした。

【Windows10】WSL2(Windows Subsystem for Linux Version2)で「Ubuntu 20.04 LTS」を使う
前の記事で、Windwos10 バージョン2004 をインストールした。この、Windwos10 バージョン2004 からは、WSL2(Windows Subsystem for Linux Version2)が正式に利用できるようになった...

続いて、gccやmakeコマンドの開発ツールを使えるようにしたので備忘録を残す。WSL2とはいえ基本的にはLinuxなので、以前、Ubuntu Serverで「gcc, make」を動かした手順と同じ。

【Ubuntu 20.04/18.04 LTS】gcc, make などの開発ツールをインストールして使う
前の記事で「Ubuntu 18.04 LTS Server」をインストールした。続いて、gccやmakeコマンドの開発ツールを使えるようにしたので備忘録を残す。尚、「Ubuntu 18.04 LTS Desktop」のターミナルでも手順は...

インストール

下記コマンドを実行して、ビルドツールをインストール。

$ sudo apt install build-essential

確認

gccとmakeコマンドが実行できるか確認

$ gcc --version
gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ make --version
GNU Make 4.2.1
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

簡単なプログラムをコンパイルし実行してみる

任意のフォルダで、エディターで下記の「sample.c」ファイルを作成。

$ nano sample.c
#include <stdlib.h>
#include <stdio.h>

int main(int argc, char *argv[])
{
    int i;

    for (i=0; i<5; i++) {
        printf("%d: test\n", i);
    }

    exit(0);
}

コンパイルしてみる。

$ gcc -o sample sample.c

sample」実行ファイルが生成されので、実行してみる。

$ ./sample
0: test
1: test
2: test
3: test
4: test
  • nano エディターは標準でインストールされている。
  • カレントディレクトリのファイルを実行するには、「./」を付ける必要がある。

makeを使ってコンパイルしてみる

エディターで下記の「Makefile」ファイルを作成。

$ nano Makefile
sample  :       sample.c
        gcc -o $@ $^

clean   :
        rm -f sample
  • コマンド行の前の空白は <TAB> 文字。

コンパイルする。

$ make

生成したファイルを削除する。

$ make clean
  • makeは引数指定がなければ、カレントディレクトリに「Makefile」や「makefile」があるとその定義に従って動く。
  • この例ではソースファイルが一つなので make の有り難みを感じにくいが、複数のソースや複雑なプロジェクトでは「make」はとても便利で強力なツールである。
「GNU Make 第3版 日本語版(オライリー)」の無料PDF
ソフトウェアのビルドに欠かせないmakeですが、便利な反面機能も豊富。私が読んだ中でお薦めなのが、オライリー「GNU Make 第3版」の本。この本は持ってはいるのですが、分厚い本なので持ち運びも大変で電子版が出たら買いたいと思っていたら...

Gitからファイルを入手してみる

上記ファイルを「GitHub」に登録しているので、エディタでファイルを作成するのも面倒という方はお試しください(^^)。
任意フォルダで下記コマンドで取得。

$ git clone https://github.com/jr4qpv/gcc_sample
Cloning into 'gcc_sample'...
remote: Enumerating objects: 14, done.
remote: Total 14 (delta 0), reused 0 (delta 0), pack-reused 14
Unpacking objects: 100% (14/14), 2.13 KiB | 198.00 KiB/s, done.

取得したgcc_sampleフォルダに移動して、makeコマンド実行でコンパイル。

$ cd gcc_sample/
$ make
  • gitコマンドは私のUbuntu環境には標準でインストールされていたが、入っていなければ「sudo apt install git」コマンドでインストール。
  • gitは、プログラムのソースコードなどの履歴を記録・追跡するためのバージョン管理ソフトであるが、とても有用なツールなのでエンジニアのスキルの一つとして使えるようになっておくとよい。

所感

WSL2を利用する事で、Windows上で手軽に本格的なLinuxプログラミングが利用できるのは素晴らしい! 今後更に、WindowsとLinuxの融合が進む事を期待する。

補足

  • Macパソコンでも同様の手順でコンパイル実行できる。macOSはPOSIXに準拠したUNIXベースのOSなので、Linuxともソース互換のあるプログラム開発ができるのも魅力。
【macOS】gcc, make などの開発ツールをインストールして使う
macOSで、gccやmakeコマンドの開発ツールを使ってC言語をコンパイル実行したので備忘録を残す。開発ツールのインストールmacOSでは「Homebrew」をインストールすることで、gccやmakeなどビルドツールも使えるように...

関連記事

【Windows10/WSL2 Ubuntu 20.04 LTS】Emacsを使う
以前の記事で、Windows10のWSL2で「Ubuntu 20.04 LTS」が使えるようにした。そこで、Emacsエディターも動くようにしたので備忘録を残す。WSL2とはいえ基本的にはLinuxなので、以前、Ubuntu Ser...
「組込みソフトウェア開発向けコーディング作法ガイド[C言語版]ESCR」の無料PDF
「組込みソフトウェア開発向けコーディング作法ガイド[C言語版]ESCR1」の改訂版Ver.3.0のPDF本が、IPA(情報処理推進機構)のサイトから入手できる。203ページもある内容で、C言語を記述する上でとても参考になるので紹介する。...

コメント

タイトルとURLをコピーしました