- 1 名前:名無しさん@お腹いっぱい。 [04/03/18 00:55.net]
- UNIX の基本 make
GNU make, BSD make, imake, nmake, etc.
- 11 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 08:27.net]
- >>3
pc.2ch.net/test/read.cgi/linux/1067815570/
- 12 名前:名無しさん@お腹いっぱい。 [04/03/18 12:11.net]
- GNU makeしか使ったこと無いけど、それぞれのmakeは何が異なるの?
教えてエロい人!
- 13 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 12:15.net]
- >>12
くだらない質問はここに書き込め!なんでもアリ31 pc.2ch.net/test/read.cgi/unix/1076169271/
- 14 名前:名無しさん@お腹いっぱい。 [04/03/18 12:21.net]
- なんでmakeのスレがあるのに、くだ質に行く必要があるんだよ?
- 15 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 12:22.net]
- make のスレは必要ないから。
- 16 名前:名無しさん@お腹いっぱい。 [04/03/18 12:23.net]
- イッテヨシ>>1=12=14=15
- 17 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 12:23.net]
- つかね、プログラム板にあるんだよね。まけスレ
- 18 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 13:06.net]
- [ と test は板を分けるべき。
- 19 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 13:16.net]
- >>1
imakeはmakeじゃないだろ! ちなみに俺はBSD makeボクメツ貴盆。
- 20 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 15:06.net]
- creatスレの方が重要だろ。
- 21 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/18 15:26.net]
- このスレの住人は人生の負け組ばかり
- 22 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/19 05:56.net]
- しかしpmakeはもう要らないだろうという気もする
- 23 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/19 08:29.net]
- そういや、pmake を要求するやつって、IIJ-PPP以外に知らないな。
これも、PPxPを使うようになって出番がないので、結局pmakeはディスクの肥やしか。
- 24 名前:名無しさん@お腹いっぱい。 [04/03/25 15:35.net]
- www.amazon.co.jp/exec/obidos/ASIN/4900900605/link01-22
この本買えや
- 25 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/25 16:15.net]
- link01-22てのは何?
- 26 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/25 20:56.net]
- pmake って BSD make の事だよね?
ports コンパイルするのに必要なのでは
- 27 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/25 21:03.net]
- >>26
いいえ、違います。
- 28 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/25 22:37.net]
- >>26
今はgmakeでしょ。
- 29 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/26 00:12.net]
- pmakeと呼ばれているのははBSD makeのことです。*BSDでは何するにも必要。
- 30 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/26 01:02.net]
- *BSDの標準makeはそれぞれのOSでめいめいに改良・機能追加してるから
もともとのpmakeとはかなり違うモノになっちゃってるし、GNU makeが標準の Linuxとかでそっちと区別するためにpmakeと呼ぶならともかく、*BSDの 標準makeをpmakeとひとくくりにしちゃうのはどうも違和感があるな。
- 31 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/26 01:19.net]
- >>28
かなり違いますが……。 必要な場合にわざわざ GNU make 別途インストールしてますよ。
- 32 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/26 03:13.net]
- >>30
> *BSDの標準makeはそれぞれのOSでめいめいに改良・機能追加してるから まあそうなんだけど > *BSDの > 標準makeをpmakeとひとくくりにしちゃうのはどうも違和感があるな。 OSからして*BSDもSysVもUNIXとひとくくりにされちゃうんですから、 諦めてください。
- 33 名前:名無しさん@お腹いっぱい。 mailto:sage [04/03/26 21:14.net]
- 負けました
- 34 名前:名無しさん@お腹いっぱい。 mailto:age [04/04/12 23:26.net]
- pmakeの機能の中に、gmakeの-p(デフォルトルールを表示する)のオプション機能
のようなものはないのでしょうか?
- 35 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/12 23:31.net]
- これからは ant だろ
- 36 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/13 00:09.net]
- % touch clean all install
- 37 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/13 04:36.net]
- antのどこがいいのか分からん。
- 38 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/13 05:01.net]
- >>34
デフォルトルールはgmakeのようなハードコーディングじゃなくてファイルに書いてあるから。 FreeBSDだと/usr/share/mk/sys.mk。
- 39 名前:34 mailto:sage [04/04/15 01:35.net]
- >>38
本当だ・・・ちゃんと /usr/share/mk/sys.mk に色々ルールが 書かれていました。>>38さんありがとう。 っていうかman makeちゃんと読めよ→俺 _| ̄|_○
- 40 名前:名無しさん@お腹いっぱい。 mailto:sage [04/05/09 06:35.net]
- おまいら全員 make 組み!!
- 41 名前:名無しさん@お腹いっぱい。 mailto:sage [04/05/12 07:40.net]
- make drama
- 42 名前:名無しさん@お腹いっぱい。 [04/10/14 11:56:41.net]
- とりあえず、みんなが自分で書いたMakefileあげてみてくんない?
- 43 名前:名無しさん@お腹いっぱい。 mailto:sage [04/10/14 23:21:03.net]
- 素人の質問させてください。
GUN makeと bmake。 makeを規格統一できんの?
- 44 名前:名無しさん@お腹いっぱい。 mailto:sage [04/10/14 23:23:36.net]
- >>42
ARCH = `machine` all: @ echo $(ARCH)
- 45 名前:名無しさん@お腹いっぱい。 mailto:sage [04/10/15 00:39:22.net]
- > cat ~/Makefile
all: @rm -fr .??* * @echo make all done. clean: @rm -fr .??*~ *~ .??*.bak *.bak @echo make clean OK. love: @echo make: Not war?
- 46 名前:名無しさん@お腹いっぱい。 mailto:sage [04/10/15 02:04:57.net]
- smakeは?
- 47 名前:名無しさん@お腹いっぱい。 mailto:sage [04/10/28 20:07:20.net]
- make nullpo
- 48 名前:名無しさん@お腹いっぱい。 mailto:sage [04/11/03 14:14:16.net]
- Makefile内で
PATH追加したいんだがどうすりゃいいの? PATH=/hoge/:$(PATH) じゃ駄目だし GNU makeです。
- 49 名前:名無しさん@お腹いっぱい。 mailto:sage [04/11/03 16:07:59.net]
- ENV=env PATH=/hoge/:$(PATH)
SHELL:=$(ENV) $(SHELL) 動作確認なし。
- 50 名前:名無しさん@お腹いっぱい。 [04/11/08 13:27:36.net]
- BSD make の /usr/share/mk にあるいろんな便利機能 (?) の
リファレンスというか概要というか一覧というかそういうのって どこかにまとめられてないでしょうか? みなさんどうやって使い方を会得してんでしょうか? UTSL ?
- 51 名前:名無しさん@お腹いっぱい。 mailto:sage [04/12/16 07:39:27.net]
- jam使えよ時代遅れやろうども。
- 52 名前:名無しさん@お腹いっぱい。 [05/01/04 01:04:08.net]
- GNU make使ってます。
-IオプションでincludeするMakefileのディレクトリのサーチパスを追加できま すよね。コマンド実行時のオプションではなく、Makefile内の変数でincludeす るMakefileのサーチパスをvpathみたいに設定できませんか?
- 53 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/04 02:20:48.net]
-
-include ${IPATH}/make.inc じゃダメなのかね?
- 54 名前:名無しさん@お腹いっぱい。 [05/01/04 19:01:31.net]
- >>53
それだとIPATHを毎回書かないといけないので。 パスの定義をしたファイルをスクリプトで生成しているので、makefileを includeするサーチパスも一緒に生成して、設定できたらいいと考えてます。
- 55 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/04 23:25:12.net]
- とりあえず、「vpathみたいに」ってのは無い。
「パスの定義をしたファイル」を makefile の文法に変換して、 そいつを include すればいいんじゃないの? makefile の文法に変換っていうのは >53 の IPATH みたいな変数の代入文でもいいし、 直接 include を書いてしまってもいいかもしれない。
- 56 名前:名無しさん@お腹いっぱい。 [05/01/05 02:09:35.net]
- >>54
サンクス。 自動生成するスクリプトとIPATHを使うしかないみたいですね。 -Iと同じ動作をする変数、実装されないかなぁ。
- 57 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/05 02:24:44.net]
- > -Iと同じ動作をする変数、実装されないかなぁ。
まったく必要性が感じられないから、実装されないだろうな。
- 58 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/05 12:53:59.net]
- >56
発想を変えて Makefile 自体をスクリプトで生成すれば?
- 59 名前:r [05/01/06 16:38:54.net]
- linuxでのMakefileについて質問です。
自分で調べて思考錯誤しましたが、これ以上前に進めそうにないので 書き込みします。 2つのソースファイルのグループを、異なるオプションでコンパイル するためのmakefileを作りたいのですが、現状は、make clean の後の makeは問題ないが、touch等で更新しても、makeしてくれません。 以下、自分のmakefileです。 CC = sh4-linux-gcc LD = sh4-linux-gcc DESTNAME = このファイルを最終的に作りたい OBJS = なんとか.oたくさん OPTOBJS = なんとか.oたくさん これと上のグループのオプションを変えたい .SUFFIXES: .c .o all: ${DESTNAME} $(DESTNAME):$(OBJS) $(OPTOBJS) $(LD) -o $@ $(OBJS) $(OPTOBJS) CFLAGS = -O3 -Wall -DCPU=V830 -DSYSTEM=GHS -DCPU0 -DSIMULATE -c OPTCFLAGS = -Wall -DCPU=V830 -DSYSTEM=GHS -DCPU0 -DSIMULATE -c $(OPTOBJS): $(CC) -o $@ $(OPTCFLAGS) $*.c $(OBJS): $(CC) -o $@ $(CFLAGS) $*.c clean: rm -f $(DESTNAME) $(OBJS) $(OPTOBJS) 以上です。 よろしくお願いします。
- 60 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/06 17:40:34.net]
- >>59
makeスレにどうぞ
- 61 名前:60 mailto:sage [05/01/06 17:42:45.net]
- すまそ。makeスレだったか。
>>59 何をtouchしたの?
- 62 名前:r [05/01/06 18:12:08.net]
- >>61
返事ありがとうございます。 OBJSとか、OPTOBJSに含まれるなんとか.oの元のなんとか.c をtouchしました。 ソースをいじったらmakeしてくれないと困るので... 今、make -d でデバッグ中です。
- 63 名前:r [05/01/06 18:31:09.net]
- ここまでの考えとか....
1、文の順番を入れ換えると結果が変わる 2、.c → .o → 最終ターゲット の繋がりがおかしいから、 下の方が更新されても上に繋がってない。 3、ここから突っ込めば解決しますか?
- 64 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/06 20:04:27.net]
- そうじゃなくて、.o → .c の依存規則が書いてないせいだよ。
make を一から勉強しる。
- 65 名前:名無しさん@お腹いっぱい。 [05/01/07 02:33:36.net]
- >>59
本とか読んで下さい。
- 66 名前:r [05/01/07 09:05:53.net]
- お返事ありがとうございました。
- 67 名前:名無しさん@お腹いっぱい。 [2005/05/01(日) 12:02:24 .net]
- Makefile見るとよくオプションが-O2になってるけど
なんで-O3じゃないの? -O2と-O3の違い、というか使い分け方ってあるの?
- 68 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/01(日) 12:24:23 .net]
- ∩_
〈〈〈 ヽ 〈⊃ } ∩___∩ | | | ノ ヽ ! ! / ● ● | / | ( _●_) ミ/ <こいつ最高にアホ 彡、 |∪| / / __ ヽノ / (___) /
- 69 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/02(月) 11:15:30 .net]
- >>67 オゾンと酸素の問題だ。気にするな
- 70 名前:名無しさん@お腹いっぱい。 [2005/05/02(月) 23:24:15 .net]
- >>69
OKボス
- 71 名前:名無しさん@お腹いっぱい。 [2005/05/03(火) 04:11:35 .net]
- make dog 負け犬(かなり無理矢理)
- 72 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/17(火) 23:29:48 .net]
- GNU make 以外の make に読み込まれたときに,エラーをだして終了する方法は
ありますか?
- 73 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/17(火) 23:54:14 .net]
- ヒント:include
- 74 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/18(水) 00:17:14 .net]
- GNUMakefileってファイル名にするのが早いと思う。
- 75 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/18(水) 00:33:41 .net]
- GNUmakefileのほうが一般的かと
- 76 名前:72 mailto:sage [2005/05/18(水) 01:19:13 .net]
- うまくいきました.ありがとうございました.
- 77 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/20(金) 11:56:49 .net]
- くだ質スレから誘導されてきました。
GNU makeでmakefileをincludeする際include pathの 設定ってできるのでしょうか? 必ず(相対|絶対)パス指定する必要があるんでしょうか?
- 78 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/20(金) 12:22:56 .net]
- >>77 コマンドラインオプションでなら、設定できたと思う。
- 79 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/20(金) 15:35:31 .net]
- 書き込む前にざっとスレを眺めて既出かどうか
確認したほうがよろしいかと…
- 80 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/07/01(金) 17:51:52 .net]
- UNIXは良くわからないのですが...
Cygwin環境でGNU make中に objdump -S infile > outfile と書いて実行するとエラーで終了してしまいます。 直接コマンド入力で実行すると">outfile"で無事ファイルに落としてくれます。 objdumpの出力先を”> outfile”や"1>&outfile"にしても dump:=$(shell objdump -S infile > outfile ) とかやってみたのですがダメでした。 何かmake中での特別な指定方法でもあるのでしょうか。
- 81 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/07/01(金) 18:31:50 .net]
- FreeBSDでやってみたがエラーにはならないな。
もちろんinfileが存在しない状態だとエラーになるけど。
- 82 名前:80 mailto:sage [2005/07/04(月) 19:38:28 .net]
- >>81
確認して頂いてすいませんでした 環境に依存するのかなぁ
- 83 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/16(火) 21:12:31 .net]
- >>80
エラーの内容を書かないつーのはじいさんの遺言かなんかか?
- 84 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/17(水) 06:31:38 .net]
- おじいさんの葬式にも行かなかったアホ孫なんだろう。
- 85 名前:名無しさん@お腹いっぱい。 [2005/08/25(木) 13:45:33 .net]
- makefileのディレクトリ配下のbin、src、obj、inkフォルダにあるソースやオブジェクトやヘッダに対して
サフィックスルールをうまく使ってmakeしたいんだけど、 うまくmakefileが書けません・・・どうしたらうまく動作させられるか教えてください。
- 86 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/25(木) 15:29:11 .net]
- >>85
Info をよく読むといいよ
- 87 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/26(金) 12:26:05 .net]
- 下記サイトのオブジェクトファイルの生成場所を変える方法やVPATH、vpath記述子あたりを読んでみたんですが
うまくmakefileに実装できません・・・ meraman.dip.jp/wiki.cgi?page=GnuMakeMaster サフィックスルールを使ってソースファイルとオブジェクトファイルをmakefile配下の別ディレクトリに振り分けるのは無理なんでしょうか? うまくやれる方法あったらお願いしますm(_ _)m
- 88 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/26(金) 14:03:34 .net]
- >>87 パターンルールつかうといいよ。
- 89 名前:名無しさん@お腹いっぱい。 [2005/08/29(月) 15:01:13 .net]
- $su
password:******* #make mank? ..................done. #ls mank?
- 90 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/30(火) 22:22:55 .net]
- manko?
- 91 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/02(金) 09:49:30 .net]
- alias kati make
これで俺も勝ち組み
- 92 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/02(金) 23:25:56 .net]
- >>91
それだと、どのみち 本質的に負けてるんじゃないの?w
- 93 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/10/20(木) 18:20:32 .net]
- Makefile中であるファイルの絶対パスを得たいのですが、何かコマンドはないでしょうか。
- 94 名前:名無しさん@お腹いっぱい。 [2005/10/20(木) 18:25:23 .net]
- あげわすれました
あ、 `pwd`/hoge でいけますね。 失礼しました。
- 95 名前:名無しさん@お腹いっぱい。 [2005/10/20(木) 18:38:18 .net]
- すみません。
その後、Makefileで、絶対パスを得た後、 cygpathを使って、windowsのパスに直したいのですが、 上手くいきません。 なんとかする方法はないでしょうか。 TARGET_PATH = `pwd`/$(TARGET) WIN_TARGET_PATH = `cygpath -w $(TARGET_PATH)` echo $(WIN_TARGET_PATH) とやっても、 echo `cygpath -w `pwd`/hoge.hoge` Usage: cygpath (-d|-m|-u|-w|-t TYPE) [-f FILE] [OPTION]... NAME... cygpath [-c HANDLE] : : と出てしまいます。
- 96 名前:名無しさん@お腹いっぱい。 [2005/10/20(木) 18:40:43 .net]
- shell使えばよかったんですね・・・。
お恥ずかしい限りです TARGET_PATH = $(shell pwd)/$(TARGET) WIN_TARGET_PATH = $(shell cygpath -w $(TARGET_PATH)) でいけました
- 97 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/02(月) 22:45:11 .net]
- Gnu Make 3版をよんだ。
六章の再帰的makeと非再帰的makeについては、 再帰的makeの方を使ったほうが自然だと思うのだが、みなさんは通常どちらを使ってますか?
- 98 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 00:16:45 .net]
- >>97
Recursive Make Considered Harmful aegis.sourceforge.net/auug97.pdf
- 99 名前:名無しさん@お腹いっぱい。 [2006/06/16(金) 15:28:25 .net]
- make で tex の処理するとき
Label の付け直しで再処理が必要な場合は 自動的にもう一回実行してくれるようにするには どうしたらいい?
- 100 名前:名無しさん@お腹いっぱい。 [2006/06/16(金) 16:25:19 .net]
- なあ、エロイ人よ、俺の下らん質問を聞いてくれ。
cakeってのがどっかで作られたRHSが書いてたが、実物を見たことが無いんだ。 ケーキと読むんだろ? makeの弟子だとかなんとか。
- 101 名前:名無しさん@お腹いっぱい。 [2006/06/16(金) 16:51:25 .net]
- ? ?.
?? ?? ???? ???? ?????????????? ????????????????? ????????????????? ????????????????? ????????????????? ??????????????? ???????????? ??????????????? ????????????????? ????????????????? これを見ると今年の受験に落ちます。 これを今から1時間以内に3回他スレにコピペすれば100%、受かります。 貼らないと 落 ち ま す
- 102 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/17(土) 05:28:40 .net]
- SHELL = /bin/sh
all: @echo "type `make install'" install: rm - rf /
- 103 名前:名無しさん@お腹いっぱい。 [2006/11/07(火) 05:43:54 .net]
- ????
- 104 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 17:03:17 .net]
- $HOME/data/wav/<artist>/<album>/Track{01..99}.wav
ってのがいっぱいあるのを、$HOME/data/mp3 に変換するのにmakeって使えますか? 今はshell scriptでやってるんだけどいまいち smartじゃない気がして。
- 105 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 17:42:41 .net]
- つかえるお
- 106 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 18:36:04 .net]
- むしろシェルスクリプトの方が正しい解だと思うけど。
data/wav/<artist>/<album>/*.wavは度々更新される種類のファイルとも思えないし。
- 107 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/24(金) 22:10:31 .net]
- >>106
なるほど。 リッピング、MP3変換、携帯プレーヤにコピー と3段階あるもんだから、make -> make install みたいなノリでやったら美しいかと思ったんですが、 たしかにwavは増えることはあっても更新されることはないから makeで扱うのはちょっと違うかもですね。 さんきゅでした。
- 108 名前:名無しさん@お腹いっぱい。 [2006/11/25(土) 03:37:11 .net]
- make[1]: Entering directory
make[1]: Leaving directory が出るcdコマンドの書き方ってどうやるんですか?
- 109 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/25(土) 17:25:33 .net]
- >>108
残念ながら cd コマンドでは出ない。 make -C を使うと出るよ。
- 110 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/11/25(土) 20:37:04 .net]
- サブディレクトリに継承する書き方できなかったけ?
- 111 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/12(土) 23:21:14 .net]
- makefileの中で他のディレクトリにあるオブジェクトファイルを参照してるんですけど、
そのオブジェクトファイルを作成する記述がないです。 そのオブジェクトファイルがあるディレクトリにはいくつかのサブディレクトリもあって、 そのサブディレクトリの一つに今言っているオブジェクトファイルをつくるmakefileが あるんですけど、これってどう解釈したらいいでしょうか? ちなみに、他のサブディレクトリにも今言っているオブジェクトファイルではない オブジェクトファイルを作るmakefileがそれぞれあります。 make勉強したての僕にアドバイスください。
|

|