1. ホーム
  2. gcc

[解決済み] 自作のmakefileを作成する【エラー255】。

2022-02-12 13:16:14

質問

私は長い間「ショートカット」してきたと判断し、いくつかのマニュアルを読み、メイクファイルに関するいくつかのビデオを見て、メイクファイルを半完成させました。

CPPS := $(shell ls src/*cpp)
TEMP := $(subst src/,obj/,$(CPPS))
OBJS := $(subst .cpp,.o,$(TEMP))
HEADERS := $(shell ls inc/*.h)
EXEC := bin/testfile

all: $(EXEC)

$(EXEC) : $(OBJS) $(HEADERS)
g++ -I inc/ $(OBJS) -o $(EXEC) -lSDL -lGLU
$(EXEC)

obj/%.o: src/%.cpp
g++ -Wall -I inc/ -c $< -o $@

ps: 間違ったことを言ってるかもしれませんが、私が「図書館の旗」と言ったのは、次のような意味です。 -lSDL -lGLU などなど...

どこに配置してもうまくいかないようです。

libフラグを挿入すると、このようなエラーが発生します。 make: *** [bin/testfile] Error 255

エラー255は、makeのコマンドシェルが特定のルールに対応するコマンドを見つけることができないために発生します。

もしそれらを含めなければ、標準的な「未定義」のメッセージが表示されます。

何かお手伝いいただけることがあれば、ぜひお願いします ありがとうございました。

解決方法は?

ビルドした後に実行ファイルを実行しようとしているように見えますが?

その場合、カレントディレクトリがPATH上にないことが問題です。 $(EXEC) .

を実行すればよいでしょう。 ./$(EXEC) を直接実行してください。

そして、プログラムの実行を別の( PHONY ) ターゲットで、ビルドステップだけを単独で行い、実行は $(EXEC) はビルドする必要がない。

(タブがないのはstackoverflowの書式設定だと思いますが、そうでなければ make は文句を言うだろう)。