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

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

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

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

make

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

makefile

make は、プログラムのビルド作業を自動化するツールです。コンパイル、リンク、インストール等のルールを記述したテキストファイルをmakefileと呼び、このルールに従ってmakeが自動的にビルドを実行する。

コマンドライン

コマンドライン(別名:Command Line Interface)は、ユーザに命令の入力を促す(プロンプト)文字列の表示を行い、すべての操作をキーボードを用いて文字列を打ち込む事でプログラムを走らせるユーザインターフェースです。

Q&A

解決済

3回答

8591閲覧

macでmakeコマンドを使えるようにしたい

bamm

総合スコア8

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

make

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

makefile

make は、プログラムのビルド作業を自動化するツールです。コンパイル、リンク、インストール等のルールを記述したテキストファイルをmakefileと呼び、このルールに従ってmakeが自動的にビルドを実行する。

コマンドライン

コマンドライン(別名:Command Line Interface)は、ユーザに命令の入力を促す(プロンプト)文字列の表示を行い、すべての操作をキーボードを用いて文字列を打ち込む事でプログラムを走らせるユーザインターフェースです。

0グッド

0クリップ

投稿2020/04/16 01:08

編集2020/04/16 02:51

ターミナル で$ which makeを書き込んでみたところ,/usr/bin/makeと表示されたので,デスクトップ上に,Makefileとhello.cを作成し,$ makeとターミナル に書き込んだところ,make: *** No targets specified and no makefile found. Stop.と表示されてしまいました.
どうしたら使用できるようになるのでしょうか.自分では全く見当がつかず,悩んでおります.どなたかご教示いただけますと幸いです.よろしくお願いします.
以下,作成したファイルのコードになります.

↓Makefile(CotEditorで作成しました)

Makefile: hello: hello.c gcc -o hello hello.c

↓hello.c

#include <stdio.h> int main(){ printf("Hello,world¥n"); return 0; }

**回答いただいた皆さま,ありがとうございました.無事解決いたしました.**

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

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

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

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

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

guest

回答3

0

ベストアンサー

make実行時のカレントディレクトリがまず間違っている可能性があります。以下のようにして再度試してください。

  • MakefileのMakefile:を削除する
  • Makefile中の、gcc -o hello hello.cの行の先頭がTABの1文字であることを確認する。(スペースではダメです)
  • ターミナルを起動し、カレントディレクトリをDesktopにする。
  • で、makeを実行。

sh

1bash-3.2$ cd ~/Desktop/ 2 3bash-3.2$ pwd 4/Users/<質問者さんのユーザー名>/Desktop 5 6bash-3.2$ ls 7Makefile hello.c 8 9bash-3.2$ make 10 11bash-3.2$ ./hello 12Hello,world

なお、改行文字で使用する円マーク¥はmacでは正しくバックスラッシュで\入力する必要があります。(Optionキー+¥キーの同時押し) そうでないと、実行時に正しく改行されません。

C

1#include <stdio.h> 2int main(){ 3 //printf("Hello,world¥n"); 4 printf("Hello,world\n"); // Option + ¥ 5 return 0; 6}

投稿2020/04/16 01:37

dodox86

総合スコア9183

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

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

bamm

2020/04/16 02:09

提示いただいた手順通りに最後まで行い,’make’を実行したのですが,以前と同様のエラーが出てしまいました. ターミナル で’ls’を実行した際の”Makefile”のところが私の場合には,”Makefile.txt”と表示されていたのですが,これは関係あるのでしょうか?
dodox86

2020/04/16 02:11

関係あります。既定(Makeファイル名を指定しない場合)では"Makefile"というファイル名です。 make -f Makefile.txt とMakeファイルを指定して実行するか、Makefile.txtからMakefileにリネームしてください。
bamm

2020/04/16 02:33

ありがとうございます.無事実行することができました.
guest

0

Makefile:

の行が不要です。消して実行し直してみてください。

投稿2020/04/16 01:14

A_kirisaki

総合スコア2853

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

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

0

とりあえず、最初の行にある

Makefile:

ってのを削除してみてはどうでしょう

投稿2020/04/16 01:17

y_waiwai

総合スコア87747

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問