2016-04-10 5 views
0

私はファイルを作るのが新しいですし、いくつかの例を見て、私のメークファイルがなぜ動いていないのか理解できませんでした。 main.cpp、A.cpp、B.cppに依存するC++オブジェクトファイルを作成しようとしています。このオブジェクトファイルはテキストファイルを入力として受け取り、そのテキストと実行コードをそのファイルに表示します。メイクのためにやるべきことは何も: メイクファイルのために何もしない

spl : 
    g++ -o spl main.cpp A.cpp B.cpp 
cat-error1 : spl 
    cat error1.txt 
run-error1 : spl 
    spl error1.txt 

は、私はそれは、タブ上の問題かもしれないが、ここでは「猫-e -t -v Makefile」の

spl : $ 
^Ig++ -o spl main.cpp A.cpp B.cpp$ 
cat-error1 : spl$ 
^Icat error1.txt$ 
run-error1 : spl$ 
^Ispl error1.txt 

私はこのエラーを取得していますから出力されると思いました。

「make makefile」を使ってMac OSX端末でmakefileを実行しています。 'makefile'は私のmakefileの名前です。

私は

+0

どのようにメイクファイルを実行しますか?あなたは私たちを見せなかった。 –

+0

質問を編集して追加しました。基本的にOSX端末で 'make makefile'を使用します。 – shaffooo

答えて

2

まあ間違ってやっているものを任意のアイデア、make makefileは間違っています。あなたはそれをどこで読んだのですか?

makeは常に「Makefile」という名前のファイルから読み取ります。それを与える引数はビルドするターゲットの名前ですが、makefileには "makefile"というターゲットはありません!さらに、あなたは3つの目標を持っているので、あなたが期待したことは明らかではありません。

make spl、またはmake cat-error1、またはmake run-error1と書いてください。

+1

...誰かがmakefileを信用しない場合、 'make -f makefile'がデフォルトのmakefileです... – jdarthenay