質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
make

make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

Q&A

解決済

2回答

3958閲覧

make コマンド「make: 循環 Main.o <- Main.o 依存関係が破棄されました.」の原因が知りたい

退会済みユーザー

退会済みユーザー

総合スコア0

make

make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

0グッド

0クリップ

投稿2021/09/09 09:53

編集2021/09/10 04:07

提示コードですが以下のコードを参考サイトより真似たのですが下記の提示警告が表示されます。これはなぜでしょうか?また上の二行をコメントアウトしても依存関係が破棄されましたの警告がでます。参考サイトが間違えているのでしょうか?

「基本文法」部ページ部
参考サイト: https://ie.u-ryukyu.ac.jp/~e085739/c.makefile.tuts.html

makefile

1Main: Main.o test.o 2 g++ -o program Main.o test.o 3 4Main.o : Main.o 5 g++ -c Main.cpp 6 7test.o : test.o 8 g++ -c test.cpp 9
$ tree . ├── Main.cpp ├── a.out ├── makefile ├── program ├── sample ├── test.cpp ├── test.hpp └── test.o
$ make make: 循環 Main.o <- Main.o 依存関係が破棄されました. make: 循環 test.o <- test.o 依存関係が破棄されました. g++ -o program Main.o test.o

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2021/09/09 09:59

> 参考サイトが間違えているのでしょうか? そんな訳ない。ターゲットと依存ファイルの意味を理解して、目を皿の様にして集中して自分のMakefileを100回読み直してください。
kazuma-s

2021/09/09 14:04

なぜ、タグが Java なんですか?
guest

回答2

0

Main.o : Main.o

こんなことをしてるからなんでは

投稿2021/09/09 10:12

y_waiwai

総合スコア87784

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/09/09 10:15

ちょうど自己解決しました。
guest

0

ベストアンサー

makefile

1hello.o: hello.c 2 gcc -c hello.c 3 4print.o: print.c 5 gcc -c print.c

hello.o: hello.c

部を

Main.o : Main.o

と記述していたためでした。自分のコーディングミスです。参考サイトは問題ありません。

投稿2021/09/09 10:15

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問