使用Microchip XC16编译器将foo.cpp构建为C代码

时间:2018-02-07 20:50:15

标签: c++ c xc16

我有一些在C ++ Windows应用程序和XC16 C应用程序之间共享的代码。源代码的编写方式使它在MSVC和XC16下完全编译(适当使用__cplusplus宏)。

问题在于XC16拒绝构建foo.cpp。我必须将文件复制到foo.c然后再将其复制回来。这对版本控制造成了严重破坏,并且当构建过程中的复制功能自动化时,会在ide中进行代码编辑。

有没有办法让XC16构建(作为C)扩展名为cpp的文件? (请注意,头文件是foo.h,所以这不是问题。)

1 个答案:

答案 0 :(得分:0)

我们在一个Windows构建环境(Embarcadero CBuilder)中发现了一个标志,强制将foo.c编译为C ++。因此,我们将重命名为foo.c。问题解决了。 (编辑:其他人评论说VC中存在类似的标志)

我们在XC16(基于gcc 4.5.1)中找不到可比较的标志来将foo.cpp视为C源文件。 -x标志(Forcing gcc to compile .cpp file as C)似乎在MPLABX下不起作用。