2014-12-02 104 views
0

我正在使用Unity單元測試框架編輯具有多個目標的makefile。按「生成」中的Code Composer Studio按鈕經過精細運行,直到以下行從gmake編譯錯誤,但單行運行正常

$(C_COMPILER) $(INC_DIRS) $(SRC_FILES1) -o $(TARGET1) 

而且在makefile是以下行:

C_COMPILER=C:\MinGW\bin\mingw32-gcc.exe 
UNITY_ROOT=../test/unity/ 
UNITY_C=$(UNITY_ROOT)unity.c 
UNITY_H=$(UNITY_ROOT)unity.h 
INC_DIRS=-I../include/ -I$(UNITY_ROOT) 
SRC_FILES1=$(UNITY_C) ../source/ProductionCode.c ../test/TestProductionCode.c ../test/test_runners/TestProductionCode_Runner.c 
TARGET_BASE1=test1 
TARGET_EXTENSION=.out 
TARGET1 = $(TARGET_BASE1)$(TARGET_EXTENSION) 

和建設中的Code Composer時,這是顯示的錯誤

C:\MinGW\bin\mingw32-gcc.exe -I../include/ -I../test/unity/ ../test/unity/unity.c ../source/ProductionCode.c ../test/TestProductionCode.c ../test/test_runners/TestProductionCode_Runner.c -o test1.out 
gmake[1]: *** [default] Error 1 
gmake[1]: Leaving directory `C:/Users/matt.harding/Documents/SubversionDirectories/pt_listen_only_can_interface/sw/ccs6_workspace/makefile_project_test1/Debug' 
gmake: *** [all] Error 2 

所以我打開了Cygwin,並試圖在那裏看看我能否找到原因。進入這個問題行,它運行得非常好,併成功地生成了目標!所以我不確定Code Composer會出現什麼問題... 有沒有想法?謝謝!

編輯:如果我在cygwin中用gmake運行相同的makefile,它將顯示與CCS中相同的錯誤。那麼...爲什麼使用gmake運行這個問題而不是從Cygwin運行編譯器會出現問題?

編輯:從我可以收集,它看起來像Windows和Cygwin之間的編譯器不兼容?如果我將makefile中的編譯器更改爲 C_COMPILER = C:\ cygwin \ bin \ gcc.exe 從Code Composer運行makefile時仍存在問題,但在Cygwin中運行gmake完全可以正常工作!

+0

從該目錄運行'make'是否可以在cygwin shell中運行?改變'C_COMPILER'路徑來使用'/'而不是\會改變什麼? – 2014-12-02 13:34:45

+0

我曾嘗試先運行'make',但顯示如下內容:Microsoft Windows [Version 6.1.7601] Copyright(c)2009 Microsoft Corporation。保留所有權利「 – 2014-12-02 13:42:03

+0

抱歉,看起來應該是這樣的:」從該目錄運行'gmake'是否工作?「 – 2014-12-02 13:45:08

回答

0

所以我找到了解決我的問題。 我將編譯器更改爲 C_COMPILER = C:\ MinGW \ bin \ gcc.exe 仍然無法在Code Composer Studio(CCS)中工作 我在系統PATH中添加了C:\ MinGW \ bin \。 仍然沒有在CCS中工作。 在將MinGW添加到系統PATH後,我關閉並重新打開了CCS。 SUCCESS! 我不完全理解爲什麼事情沒有奏效,爲什麼我期望他們,但至少我們有一個解決方案。

+0

啊,我敢打賭'gcc'試圖找到其他相關的二進制文件,而沒有使用完整的路徑,make的錯誤完全沒有幫助,該目錄可能已經在你的路徑shell。是的,重新啓動應用程序需要讓他們看到新的系統級設置(實際上,我有點驚訝你不需要重新啓動所有的Windows來運行)。 – 2014-12-03 14:57:20

相關問題