私は単純なメイクファイルを実行していますが、引数が多すぎるというエラーが発生しています。何を言っているのかわからない
ここに私のコードがあります
project1: *.cpp *.h
g++ -o main *.cpp
これがターミナルが言っていることです
unixapps1:project1> project1: *.cpp *.h
project1:: Too many arguments.
私は単純なメイクファイルを実行していますが、引数が多すぎるというエラーが発生しています。何を言っているのかわからない
ここに私のコードがあります
project1: *.cpp *.h
g++ -o main *.cpp
これがターミナルが言っていることです
unixapps1:project1> project1: *.cpp *.h
project1:: Too many arguments.
問題は次の 2 つだと思います。
ディレクトリに非常に多くのソース ファイルがあり、名前の長さがシェルには長すぎます。
makefile
シェルスクリプトであるかのように誤って実行しています。エラーメッセージは、実行した場合に表示されるものsh makefile
で、そのproject1:
行が最初の (空白でもコメントでもない) 行でした。
orを実行する必要がありますmake
(makefile の名前が の場合project1.mk
) make -f project1.mk
。
私が間違っていると推測した場合(そうであることを願っています)、質問のプロンプトとコマンドラインを明確にする必要があります。慣習的に$
、シェル プロンプトとして使用します ( forsh
および relatives %
。C シェルまたはその関連シェルを使用している#
場合、または root として実行している場合 — プログラミングしている場合はこれを行うべきではありません)。