Eclipse 问题 - 编译期间不考虑 .c 和 .cpp 文件中定义的预处理
Eclipse Issue - Preprocess defined in .c & .cpp file are not considered during compilation
我正在使用 Eclipse 3.8 ,我正在使用具有不同配置的LED面板,例如COONMAL PORTODE&普通阳极。为此,我将一些预处理器指令设置为CFG.H文件之一中的配置为 -
#define _COMMON_CATHODE_
#undef _COMMON_ANODE_
最初分别设置或重置时两个宏都可以正常工作。但是后来,当我对这些宏的更改进行更改时,我发现在编译过程中没有考虑更改,因此我仍在获取旧数据。
一些解决方法 - 如果我对源代码进行了一些更改,例如更改文本要显示,那么新鲜构建将以定向形式显示文本。
我尝试为此找到解决方案,但无法获得类似的情况。
请让我知道是否有人可以解决。
与CodeBench遇到相同的问题(大致基于Eclipse(。
软件的构建版本存储在一个定义中,但是如果没有完成清洁构建,则不会适用,这将使我很困扰,不确定是否在没有清洁的情况下进行构建解决方案。
唯一帮助我的是在构建之前清洁项目,所以:
项目 ->属性
C/C 构建
设置
构建步骤选项卡
将" Make Clean"添加到前构建步骤中。
因为对您而言,它不像构建版本,我能想到的另一个解决方案是创建2种具有不同宏定义集的配置,这意味着将您的定义从源代码中获取并将其移动到项目设置。
项目 ->属性
C/C 一般
路径和符号
符号选项卡
gnu c 或 gnu c 取决于项目
在同一屏幕上,在管理配置页面上创建一些配置,并为每种配置设置所需的定义。您的对象文件将存储在分离的文件夹中,因此不会混合在一起。
相关文章:
- .cpp和.h文件中的模板专用化声明
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 命名空间中具有.h和.cpp文件的类
- 为什么我的主文件.cpp不打印头文件中的任何内容
- 生成文件错误 - 找不到文件 - *.cpp
- 如何在文件.cpp gtkmm中声明小部件
- 没有实现文件(.cpp)的派生类
- 如何使用"CMakeLists.txt"中的add_library将整个文件(.cpp,.h等)包含在目录中
- 如何在Linux / Windows操作系统上使用文件*.cpp一步编译下面的代码
- 关于 Linux .so 文件无法链接到主文件.cpp文件
- 文件.cpp从Windows到Linux
- Ubuntu C++ 编译器错误: g++: 错误: 文件.cpp: 没有这样的文件或目录
- 如何将文件.cpp编译为本机编译
- 使用模板类时,似乎无法包含除 main 以外的任何 cpp 文件.cpp
- 无法编译C++文件.cpp。C++98模式
- 为什么C++头文件不需要包含实现文件 (.cpp)
- 如何访问位于独立文件(.cpp)中的非成员函数
- 如何在Visual Studio Code中通过键盘快捷键切换头文件/cpp文件
- 如何将数据从stringstream写入文件(CPP)
- 为什么filestream不把空白写入文件cpp ?