2009-01-14 31 views
1

在下面的程序中,有兩件事我不明白。如何在Microsoft VC中使用此生成文件?

  1. 如何在Microsoft VC中使用此makefile?

  2. 爲什麼會有'?'在'='之前?

計劃:

ifeq ($(TARGET_COMPILER),ms)  

    include ../makefile.ms.config 

    DBG?= /Zi 

    OPT= /Ox 

    CXXFLAGS += $(COMMON_FLAGS) $(OPT) $(DBG) 

    EEXT = $(EXT).dll 

    ifeq ($(GZSTREAM),1) 

     MYLIBS = src/gzstream/lib/zlib.lib 

    endif 
endif 

回答

6
  1. 有在Visual Studio中生成文件項目類型。否則,很可能makefile是由nmake運行的。

  2. 語法'?='表示如果變量未定義,則賦值。換句話說,如果DBG沒有設置,它會將其設置爲/ Zi,否則如果DBG電流的值爲/ Z0,則它將保持當前值/ Z0。