📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

文字列「__FORCETOC__」を「{{#seo: |title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki |keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 |description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This pag…
 
(同じ利用者による、間の1版が非表示)
55行目: 55行目:


== Makeコマンドの基本 ==
== Makeコマンドの基本 ==
 
<code>make</code>コマンドは、主にソースコードからプログラムをビルドする時に使用するツールである。<br>
主に、ファイル間の依存関係を管理して、必要な部分のみを効率的に更新することにある。<br>
<br>
<code>make</code>コマンドの動作の中心となるのは、Makefileと呼ばれる設定ファイルである。<br>
Makefileファイルには、ターゲット (生成したいファイルや実行したい操作)、依存関係、それらを生成するためのコマンドが記述されている。<br>
<br>
基本的なMakefileファイルの構造を、以下に示す。<br>
<ターゲット>: <依存ファイル>
    <コマンド>
<br>
以下の例では、簡単なC言語のプログラムをコンパイルするMakefileファイルである。<br>
<syntaxhighlight lang="make">
program: main.o utils.o
    gcc -o program main.o utils.o
main.o: main.c
    gcc -c main.c
utils.o: utils.c
    gcc -c utils.c
</syntaxhighlight>
<br>
<code>make</code>コマンドを実行する時、Makefileファイルを読み取り、必要なファイルのみをコンパイルする。<br>
例えば、main.cファイルのみを変更した場合は、<code>make</code>コマンドはmain.oとprogramのみを再ビルドして、utils.oは再コンパイルしない。<br>
<br>
また、<code>make</code>コマンドには様々なオプションが存在する。<br>
* -f <ファイル名>
*: 特定のMakefileファイルを指定して実行する。
* target
*: 特定のターゲットのみをビルドする。
* -j <数値>
*: <数値>個の並列ジョブを実行してビルドを高速化する。
<br>
<code>make</code>コマンドのメリットは、大規模なプロジェクトでも効率的にビルドプロセスを管理できることである。<br>
また、Makefileファイルを適切に設計することにより、クロスプラットフォーム開発、テスト、デプロイメント等も容易になる。<br>
<br>
<u>※注意</u><br>
<u>Makefileファイルのシンタックスは独特であり、特にタブとスペースの使い分けに注意が必要である。</u><br>
<u>また、複雑なプロジェクトではMakefileファイル自体が大きくなり、管理が難しくなることがある。</u><br>
<br><br>
<br><br>


99行目: 137行目:
  make DESTDIR=/home/<ユーザ名> install
  make DESTDIR=/home/<ユーザ名> install
<br><br>
<br><br>
{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]