私は現在、makefileを使ってCコードでプログラムをコンパイルしようとしていますが、プログラムはVisual Studioのウィンドウでうまくコピーします。私はクラス環境で動作させるつもりです使用KNOPPIX)acプログラムのmakefile(knoppix上)
私はガイドを使用してメイクファイルを作成し、これが出力されます:
[email protected]:~/Desktop/projfinal$ make
gcc -c main.c
make: Warning: File `q1.c' has modification time 8.2e+03 s in the future
gcc -c q1.c
gcc -c q2.c
gcc -c q3.c
gcc -c q4.c
gcc -c q5.c
gcc -c q6.c
gcc -c q7.c
gcc -o main.o q1.o q2.o q3.o q4.o q5.o q6.o q7.o
/usr/lib/gcc/i486-linux-gnu/4.7/../../../i386-linux-gnu/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: error: ld returned 1 exit status
make: *** [runProject] Error 1
私はコンパイルするためのmakefileにメインを含むファイルを追加しましたが、ここに私のメイクファイルは次のとおりです。
runProject: main.o q1.o q2.o q3.o q4.o q5.o q6.o q7.o
gcc -o main.o q1.o q2.o q3.o q4.o q5.o q6.o q7.o
main.o: main.c projectHeader.h
gcc -c main.c
q1.o: q1.c projectHeader.h
gcc -c q1.c
q2.o: q2.c projectHeader.h
gcc -c q2.c
q3.o: q3.c projectHeader.h
gcc -c q3.c
q4.o: q4.c projectHeader.h
gcc -c q4.c
q5.o: q5.c projectHeader.h
gcc -c q5.c
q6.o: q6.c projectHeader.h
gcc -c q6.c
q7.o: q7.c projectHeader.h
gcc -c q7.c
clean:
rm runProject main.o q1.o q2.o q3.o q4.o q5.o q6.o q7.o
どのような援助や洞察力をいただければ幸いです:)
なぜあなたは、標準の決まり文句のように多くをオーバーライドしていますか? –
もし私があなたをよく理解しているのであれば、メイクファイルに不必要な構文をたくさん書くのですか?それは私が今それをやる方法を学んだだけで、私はインターネットからそれをやったので、それを行う良い方法は何でしょうか? – BaywolfX
makeは既に.oファイルをビルドする方法を知っています。ヘッダー要件を指定するだけです。 'q1.o:projectHeader.h'など –