2016-05-31 210 views
0

編譯器版本:TI v15.12.1.LTSC++編譯錯誤在Code Composer Studio的類手臂

家庭:ARM

變式:全憑靜脈麻醉TM4C123GH6PM

當嘗試建立C++中的主類.C這是給下面的錯誤

**** Build of configuration Debug__TI for project Lab1 **** 

"C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all 
'Building file: ../Generic.cpp' 
'Invoking: ARM Compiler' 
"C:/ti/ccsv6/tools/compiler/ti-cgt-arm_15.12.1.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-arm_15.12.1.LTS/include" -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --diag_wrap=off --diag_warning=225 --display_error_number --abi=eabi --preproc_with_compile --preproc_dependency="Generic.d" "../Generic.cpp" 
'Finished building: ../Generic.cpp' 
' ' 
'Building file: ../main.c' 
'Invoking: ARM Compiler' 
"C:/ti/ccsv6/tools/compiler/ti-cgt-arm_15.12.1.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-arm_15.12.1.LTS/include" -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --diag_wrap=off --diag_warning=225 --display_error_number --abi=eabi --preproc_with_compile --preproc_dependency="main.d" "../main.c" 

>> Compilation failure 
subdir_rules.mk:14: recipe for target 'main.obj' failed 
"..\Generic.h", line 11: error #20: identifier "class" is undefined 
"..\Generic.h", line 11: error #66: expected a ";" 
"..\Generic.h", line 15: warning #12-D: parsing restarts here after previous syntax error 
"../main.c", line 6: error #20: identifier "generic" is undefined 
3 errors detected in the compilation of "../main.c". 
gmake: *** [main.obj] Error 1 
'Building file: ../tm4c123gh6pm_startup_ccs.c' 
'Invoking: ARM Compiler' 
"C:/ti/ccsv6/tools/compiler/ti-cgt-arm_15.12.1.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-arm_15.12.1.LTS/include" -g --gcc --define=ccs="ccs" --define=PART_TM4C123GH6PM --diag_wrap=off --diag_warning=225 --display_error_number --abi=eabi --preproc_with_compile --preproc_dependency="tm4c123gh6pm_startup_ccs.d" "../tm4c123gh6pm_startup_ccs.c" 
'Finished building: ../tm4c123gh6pm_startup_ccs.c' 
' ' 
gmake: Target 'all' not remade because of errors. 

**** Build Finished **** 

類的細節:

main.c中

#include "Generic.h" 

int main(void) { 

    Generic *generic; 
    return 0; 
} 

Generic.cpp

#include "Generic.h" 

Generic::Generic() { 
    // TODO Auto-generated constructor stub 

} 

Generic::~Generic() { 
    // TODO Auto-generated destructor stub 
} 

Generic.h

#ifndef GENERIC_H_ 
#define GENERIC_H_ 

class Generic { 
public: 
    Generic(); 
    virtual ~Generic(); 
}; 

#endif /* GENERIC_H_ */ 

我不知道我們是否需要作出的main.c到的main.cpp。如果是這樣的話,這使得文件需要更新的main.cpp

在C++編譯任何幫助ARM

+0

'armcl'似乎有一個'--cpp_default'命令行選項,你可以嘗試,如果你絕對不能重命名你的main.c –

回答

0

從TI論壇:

默認情況下,TI ARM編譯器使用的文件擴展名以確定 是否將源代碼編譯爲C或C++。 如果這是一個CCS項目,您可以將main.c重命名爲main.cpp,並且CCS生成的makefile將自動更新。

現在可以使用。謝謝。