私はしばらくの間、正しいmakefileを作ろうとしていますが、 "make:***ターゲットを` all 'にするルールはありません。makefile - make:***ターゲットをallにするルールはありません '。停止
私は1つのメインプログラムがあります。mpasswdsort.c をして、Cファイルウィッヒがmpasswdsortで使用され、それは同様にヘッダが付属しています: list.cとlist.h
私のメイク:
CC=gcc
CFLAGS=-Wall -pedantic -ansi
all: mpasswdsort
server: mpasswdsort.o list.o
$(CC) mpasswdsort.o list.o -o mpasswdsort
mpasswdsort.o: mpasswdsort.cpp
$(CC) $(CFLAGS) mpasswdsort.cpp
list.o: list.cpp
$(CC) $(CFLAGS) list.cpp
clean:
rm -f server client *.o core
makefileに間違っているかどうか、またはmakefilが.txtファイルではないと確信しています。
@JohnBollinger氏によると、あなたのメークファイルの名前は何ですか(そしてその許可は何ですか?) – KevinDTimm
また、あなたのmakefileは 'すべて'が 'mpasswdsort'を含んでいると言っていますが、' mpasswdsort'のルールはありません – KevinDTimm
それはおそらくエラー@KevinDTimmですが、必ずしもそうではありません。 'make 'がその組み込み規則の1つを介して' mpasswdsort'を構築する方法を理解できれば、明示的規則を提供する必要はありません。この場合、 'mpasswdsort.o'からビルドしようとします。ビルドには明示的なルールがあります。私はおそらくそれがリンクに失敗するだろうと思うが、診断は質問に提示されたものとは大きく異なるだろう。 –