2014-01-24 126 views
-1

今天,我得到了一個項目,其編號爲makefile,但不幸的是我無法在Windows上運行makefile。所以我開始將它轉換爲CMake,但由於我對makefiles沒有太多的瞭解,無法正確理解下面的代碼試圖做什麼並「模擬」CMake中的行爲。將makefile項目轉換爲CMake

那麼,我有問題的代碼是以下之一:

# -- src and obj List ---------- 
SRC = $(addprefix ${SRC_PATH}/, $(FILE)) 
OBJ = $(addprefix ${OBJ_PATH}/, $(addsuffix .o, $(basename $(FILE)))) 

# -- Base rules ---------- 
$(OBJ_PATH)/%.o : $(SRC_PATH)/%.c 
     $(CC) $(CFLAGS) -c $< -o [email protected] 

#-----Main rule ---------- 
$(EXE_PATH)/$(PRODUCT): $(OBJ) 
    $(CC) -o [email protected] $^ $(LDFLAGS) $(OPTFLAGS) $(CFG) $(INC) $(LIB) -lm 

# -- Other stuff ---------- 
depend: 
    makedepend $(CFLAGS) -Y $(SRC) 

能有人給我如何在本一個?尤其是將一些見解,在什麼[email protected]$<$^嗎?

謝謝。

+1

你可能想使用Cygwin,這取決於你有什麼與此 – user2485710

+0

您可以在Windows上使用的makefile最終目標。你也許應該從閱讀GNU make(或其他任何make)手冊開始。 –

+1

這看起來像樣板文件設置代碼來處理CMake自動執行的依賴關係。逐行翻譯將毫無意義。如果它是一個簡單的項目,您只需要一個源列表,輸出的名稱和位置以及編譯器和鏈接器的標誌。用這些,從頭開始CMakeLists.txt。如果它很複雜,期望花一些時間學習高級'make'語法。 – Peter

回答