-2
ソースコードファイルmain.c
、library.c
、library.h
などがある場合入力ファイルをmain input1.txt input2.txt
のようなコンソールコマンドとして動作させるにはどうすればいいですか?これはまったく完了できますか、それともコンパイル後に行う必要がありますか?入力ファイルをMakefileで設定するには? (C)
ソースコードファイルmain.c
、library.c
、library.h
などがある場合入力ファイルをmain input1.txt input2.txt
のようなコンソールコマンドとして動作させるにはどうすればいいですか?これはまったく完了できますか、それともコンパイル後に行う必要がありますか?入力ファイルをMakefileで設定するには? (C)
program: main.c library.c
gcc -o program $<
.PHONY: run
run: program input1.txt input2.txt.
./program input1.txt input2.txt
基本的には、プログラムを実行するための依存関係のように扱います。上記の例では、make run
がプログラムを実行し、必要に応じてコンパイルします。
私は 'Makefile:3:*** missing separatorを得ました。スペースをタブに変えたにもかかわらず、私が間違っていることがありますか? – Clanger
PHONYの後にコロンが必要だと思います。私はメモリから行っていました:) –
'program'ターゲットのレシピで' program'の代わりに '$ @'を使うのが一般的です。そうすれば、レシピを変更する必要はありません。ターゲットは変更されています(前提条件のために '$ <'ですでに行ったように)。詳細については、https://www.gnu.org/software/make/manual/html_node/Automatic-Variables.htmlで利用可能な*自動変数*を参照してください。 –