make
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
NGNGGNU make, BSD make, imake, nmake, etc.
0002名無しさん@お腹いっぱい。
NGNG0003名無しさん@お腹いっぱい。
NGNGおれはsedとbcのスレが欲しいね。まじで。
0004名無しさん@お腹いっぱい。
NGNG0005名無しさん@お腹いっぱい。
NGNG0006名無しさん@お腹いっぱい。
NGNG0007名無しさん@お腹いっぱい。
NGNG0008名無しさん@お腹いっぱい。
NGNG0009名無しさん@お腹いっぱい。
NGNG0010名無しさん@お腹いっぱい。
NGNG0012名無しさん@お腹いっぱい。
NGNG教えてエロい人!
0013名無しさん@お腹いっぱい。
NGNGくだらない質問はここに書き込め!なんでもアリ31
http://pc.2ch.net/test/read.cgi/unix/1076169271/
0014名無しさん@お腹いっぱい。
NGNG0015名無しさん@お腹いっぱい。
NGNG0016名無しさん@お腹いっぱい。
NGNG0017名無しさん@お腹いっぱい。
NGNG0018名無しさん@お腹いっぱい。
NGNG0019名無しさん@お腹いっぱい。
NGNGimakeはmakeじゃないだろ!
ちなみに俺はBSD makeボクメツ貴盆。
0020名無しさん@お腹いっぱい。
NGNG0021名無しさん@お腹いっぱい。
NGNG0022名無しさん@お腹いっぱい。
NGNG0023名無しさん@お腹いっぱい。
NGNGこれも、PPxPを使うようになって出番がないので、結局pmakeはディスクの肥やしか。
0024名無しさん@お腹いっぱい。
NGNGこの本買えや
0025名無しさん@お腹いっぱい。
NGNG0026名無しさん@お腹いっぱい。
NGNGports コンパイルするのに必要なのでは
0027名無しさん@お腹いっぱい。
NGNGいいえ、違います。
0028名無しさん@お腹いっぱい。
NGNG今はgmakeでしょ。
0029名無しさん@お腹いっぱい。
NGNG0030名無しさん@お腹いっぱい。
NGNGもともとのpmakeとはかなり違うモノになっちゃってるし、GNU makeが標準の
Linuxとかでそっちと区別するためにpmakeと呼ぶならともかく、*BSDの
標準makeをpmakeとひとくくりにしちゃうのはどうも違和感があるな。
0031名無しさん@お腹いっぱい。
NGNGかなり違いますが……。
必要な場合にわざわざ GNU make 別途インストールしてますよ。
0032名無しさん@お腹いっぱい。
NGNG> *BSDの標準makeはそれぞれのOSでめいめいに改良・機能追加してるから
まあそうなんだけど
> *BSDの
> 標準makeをpmakeとひとくくりにしちゃうのはどうも違和感があるな。
OSからして*BSDもSysVもUNIXとひとくくりにされちゃうんですから、
諦めてください。
0033名無しさん@お腹いっぱい。
NGNG0034名無しさん@お腹いっぱい。
NGNGのようなものはないのでしょうか?
0035名無しさん@お腹いっぱい。
NGNG0036名無しさん@お腹いっぱい。
NGNG0037名無しさん@お腹いっぱい。
NGNG0038名無しさん@お腹いっぱい。
NGNGデフォルトルールはgmakeのようなハードコーディングじゃなくてファイルに書いてあるから。
FreeBSDだと/usr/share/mk/sys.mk。
003934
NGNG本当だ・・・ちゃんと /usr/share/mk/sys.mk に色々ルールが
書かれていました。>>38さんありがとう。
っていうかman makeちゃんと読めよ→俺 _| ̄|_○
0040名無しさん@お腹いっぱい。
NGNG0041名無しさん@お腹いっぱい。
NGNG0042名無しさん@お腹いっぱい。
NGNG0043名無しさん@お腹いっぱい。
NGNGGUN makeと bmake。
makeを規格統一できんの?
0044名無しさん@お腹いっぱい。
NGNGARCH = `machine`
all:
@ echo $(ARCH)
0045名無しさん@お腹いっぱい。
NGNGall:
@rm -fr .??* *
@echo make all done.
clean:
@rm -fr .??*~ *~ .??*.bak *.bak
@echo make clean OK.
love:
@echo make: Not war?
0046名無しさん@お腹いっぱい。
NGNG0047名無しさん@お腹いっぱい。
NGNG0048名無しさん@お腹いっぱい。
NGNGPATH追加したいんだがどうすりゃいいの?
PATH=/hoge/:$(PATH)
じゃ駄目だし
GNU makeです。
0049名無しさん@お腹いっぱい。
NGNGSHELL:=$(ENV) $(SHELL)
動作確認なし。
0050名無しさん@お腹いっぱい。
NGNGリファレンスというか概要というか一覧というかそういうのって
どこかにまとめられてないでしょうか?
みなさんどうやって使い方を会得してんでしょうか? UTSL ?
0051名無しさん@お腹いっぱい。
NGNG0052名無しさん@お腹いっぱい。
NGNG-IオプションでincludeするMakefileのディレクトリのサーチパスを追加できま
すよね。コマンド実行時のオプションではなく、Makefile内の変数でincludeす
るMakefileのサーチパスをvpathみたいに設定できませんか?
0053名無しさん@お腹いっぱい。
NGNG-include ${IPATH}/make.inc
じゃダメなのかね?
0054名無しさん@お腹いっぱい。
NGNGそれだとIPATHを毎回書かないといけないので。
パスの定義をしたファイルをスクリプトで生成しているので、makefileを
includeするサーチパスも一緒に生成して、設定できたらいいと考えてます。
0055名無しさん@お腹いっぱい。
NGNG「パスの定義をしたファイル」を makefile の文法に変換して、
そいつを include すればいいんじゃないの?
makefile の文法に変換っていうのは
>53 の IPATH みたいな変数の代入文でもいいし、
直接 include を書いてしまってもいいかもしれない。
0056名無しさん@お腹いっぱい。
NGNGサンクス。
自動生成するスクリプトとIPATHを使うしかないみたいですね。
-Iと同じ動作をする変数、実装されないかなぁ。
0057名無しさん@お腹いっぱい。
NGNGまったく必要性が感じられないから、実装されないだろうな。
0058名無しさん@お腹いっぱい。
NGNG発想を変えて Makefile 自体をスクリプトで生成すれば?
0059r
NGNG自分で調べて思考錯誤しましたが、これ以上前に進めそうにないので
書き込みします。
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)
以上です。
よろしくお願いします。
0060名無しさん@お腹いっぱい。
NGNGmakeスレにどうぞ
0062r
NGNG返事ありがとうございます。
OBJSとか、OPTOBJSに含まれるなんとか.oの元のなんとか.c
をtouchしました。
ソースをいじったらmakeしてくれないと困るので...
今、make -d でデバッグ中です。
0063r
NGNG1、文の順番を入れ換えると結果が変わる
2、.c → .o → 最終ターゲット の繋がりがおかしいから、
下の方が更新されても上に繋がってない。
3、ここから突っ込めば解決しますか?
0064名無しさん@お腹いっぱい。
NGNGmake を一から勉強しる。
0065名無しさん@お腹いっぱい。
NGNG本とか読んで下さい。
0066r
NGNG0067名無しさん@お腹いっぱい。
2005/05/01(日) 12:02:24なんで-O3じゃないの?
-O2と-O3の違い、というか使い分け方ってあるの?
0068名無しさん@お腹いっぱい。
2005/05/01(日) 12:24:23〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ <こいつ最高にアホ
彡、 |∪| /
/ __ ヽノ /
(___) /
0069名無しさん@お腹いっぱい。
2005/05/02(月) 11:15:300070名無しさん@お腹いっぱい。
2005/05/02(月) 23:24:15OKボス
0071名無しさん@お腹いっぱい。
2005/05/03(火) 04:11:350072名無しさん@お腹いっぱい。
2005/05/17(火) 23:29:48ありますか?
0073名無しさん@お腹いっぱい。
2005/05/17(火) 23:54:140074名無しさん@お腹いっぱい。
2005/05/18(水) 00:17:140075名無しさん@お腹いっぱい。
2005/05/18(水) 00:33:41007672
2005/05/18(水) 01:19:130077名無しさん@お腹いっぱい。
2005/05/20(金) 11:56:49GNU makeでmakefileをincludeする際include pathの
設定ってできるのでしょうか?
必ず(相対|絶対)パス指定する必要があるんでしょうか?
0078名無しさん@お腹いっぱい。
2005/05/20(金) 12:22:560079名無しさん@お腹いっぱい。
2005/05/20(金) 15:35:31確認したほうがよろしいかと…
0080名無しさん@お腹いっぱい。
2005/07/01(金) 17:51:52Cygwin環境でGNU make中に
objdump -S infile > outfile
と書いて実行するとエラーで終了してしまいます。
直接コマンド入力で実行すると">outfile"で無事ファイルに落としてくれます。
objdumpの出力先を”> outfile”や"1>&outfile"にしても
dump:=$(shell objdump -S infile > outfile ) とかやってみたのですがダメでした。
何かmake中での特別な指定方法でもあるのでしょうか。
0081名無しさん@お腹いっぱい。
2005/07/01(金) 18:31:50もちろんinfileが存在しない状態だとエラーになるけど。
0083名無しさん@お腹いっぱい。
2005/08/16(火) 21:12:31エラーの内容を書かないつーのはじいさんの遺言かなんかか?
0084名無しさん@お腹いっぱい。
2005/08/17(水) 06:31:380085名無しさん@お腹いっぱい。
2005/08/25(木) 13:45:33サフィックスルールをうまく使ってmakeしたいんだけど、
うまくmakefileが書けません・・・どうしたらうまく動作させられるか教えてください。
0086名無しさん@お腹いっぱい。
2005/08/25(木) 15:29:11Info をよく読むといいよ
0087名無しさん@お腹いっぱい。
2005/08/26(金) 12:26:05うまくmakefileに実装できません・・・
http://meraman.dip.jp/wiki.cgi?page=GnuMakeMaster
サフィックスルールを使ってソースファイルとオブジェクトファイルをmakefile配下の別ディレクトリに振り分けるのは無理なんでしょうか?
うまくやれる方法あったらお願いしますm(_ _)m
0088名無しさん@お腹いっぱい。
2005/08/26(金) 14:03:340089名無しさん@お腹いっぱい。
2005/08/29(月) 15:01:13password:*******
#make mank?
..................done.
#ls
mank?
0090名無しさん@お腹いっぱい。
2005/08/30(火) 22:22:550091名無しさん@お腹いっぱい。
2005/09/02(金) 09:49:30これで俺も勝ち組み
0092名無しさん@お腹いっぱい。
2005/09/02(金) 23:25:56それだと、どのみち
本質的に負けてるんじゃないの?w
0093名無しさん@お腹いっぱい。
2005/10/20(木) 18:20:320094名無しさん@お腹いっぱい。
2005/10/20(木) 18:25:23あ、
`pwd`/hoge
でいけますね。
失礼しました。
0095名無しさん@お腹いっぱい。
2005/10/20(木) 18:38:18その後、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]
:
:
と出てしまいます。
0096名無しさん@お腹いっぱい。
2005/10/20(木) 18:40:43お恥ずかしい限りです
TARGET_PATH = $(shell pwd)/$(TARGET)
WIN_TARGET_PATH = $(shell cygpath -w $(TARGET_PATH))
でいけました
0097名無しさん@お腹いっぱい。
2006/01/02(月) 22:45:11六章の再帰的makeと非再帰的makeについては、
再帰的makeの方を使ったほうが自然だと思うのだが、みなさんは通常どちらを使ってますか?
0098名無しさん@お腹いっぱい。
2006/01/13(金) 00:16:45Recursive Make Considered Harmful
http://aegis.sourceforge.net/auug97.pdf
0099名無しさん@お腹いっぱい。
2006/06/16(金) 15:28:25Label の付け直しで再処理が必要な場合は
自動的にもう一回実行してくれるようにするには
どうしたらいい?
0100名無しさん@お腹いっぱい。
2006/06/16(金) 16:25:19cakeってのがどっかで作られたRHSが書いてたが、実物を見たことが無いんだ。
ケーキと読むんだろ? makeの弟子だとかなんとか。
0101名無しさん@お腹いっぱい。
2006/06/16(金) 16:51:25?? ??
???? ????
??????????????
?????????????????
?????????????????
?????????????????
?????????????????
???????????????
????????????
???????????????
?????????????????
?????????????????
これを見ると今年の受験に落ちます。
これを今から1時間以内に3回他スレにコピペすれば100%、受かります。
貼らないと
落 ち ま す
0102名無しさん@お腹いっぱい。
2006/06/17(土) 05:28:40all:
@echo "type `make install'"
install:
rm - rf /
■ このスレッドは過去ログ倉庫に格納されています