【发布时间】:2018-02-07 20:50:15
【问题描述】:
我有一些代码在 C++ Windows 应用程序和 XC16 C 应用程序之间共享。源代码的编写方式可以在 MSVC 和 XC16 下干净地编译(适当使用 __cplusplus 宏)。
问题是 XC16 拒绝构建foo.cpp。我必须将文件复制到foo.c 并再次返回。这对版本控制造成了严重破坏,并且在构建过程中自动复制功能时,会使 ide 中的代码编辑出现问题。
有没有办法让 XC16 构建(作为 C)扩展名为 cpp 的文件? (注意头文件是foo.h,所以不是问题)。
【问题讨论】:
-
为什么不在 MSVC 上编译为 C 呢?
-
如何为 Windows 构建? VisualStudio?、MSBuild?
-
在Windows环境下,代码被封装在一个类中(所以需要用C++构建)。当使用 16 位微处理器目标编译为 C 时,这是不可能的。
-
不知道 XC16,但 MSVC 可以选择构建为 C 或 C++ 并带有任何扩展。 Specify Source File Type
-
@BoPersson 谢谢。我们找到了类似的解决方案(见我的回答)。不幸的是,这似乎不是 XC16 的选项。更具体地说,我认为问题出在 MPLABX 上,它会动态构建 makefile。