makefileについて

[戻る]
Monster 2003/02/21(金) 17:30:12
#########################################
cflags = $(cflags) /GX

!include <win32.mak>

OBJS = sample.obj

sample.exe : $(OBJS)
    $(link) /OUT:$@ $(OBJS)

%.obj : %.cpp
    $(cc) $(cflags) $<
#########################################

「上記makefileを作成して実行すると、warnig C4530 C++例外処理を使っていますが、
アンワインドセマンティクスは有効になりません。-GXを指定して下さい」と出力されてしまいます。
なぜこのようになってしまうのか分かりません。分かる方がいましたらよろしくお願いします
つなみに、コマンドブロンプト上で cl /GX sample.cppは正常にコンパイルされます。

επιστημη 2003/02/21(金) 17:34:58
> %.obj : %.cpp
>    $(cc) $(cflags) $<

この推論規則が適用されていないのでは?

Monster 2003/02/21(金) 17:35:17
はじめまして Monsterです
環境はWindows2000 VC6.0 SP3です
すいませんでした。
また、挨拶が遅れた事もお詫びいたします

Monster 2003/02/21(金) 17:50:09
επιστημη さっそくの返事ありがとうございます。

>> %.obj : %.cpp
>>    $(cc) $(cflags) $<

>この推論規則が適用されていないのでは?

なぜこの推論規則が適用されないのでしょうか?

επιστημη 2003/02/21(金) 18:04:18
ふつー

.cpp.obj :
   やること

って書くんじゃないっけ?

# %.obj : %.cpp 
# ってな書き方あるんすか? ようわからんです。

Monster 2003/02/24(月) 17:10:19
[[解決]]
επιστημηさん
ありがとうございました。
.cpp.obj:で解決はしました。

%.obj : %.cpp
の推論規則は本に載っていたのですが、もう一度きちんと読んでみます。

古いスレッドには追加発言できません。