可以让Eclipse CDT强制构建一个CMake生成的项目,而忽略资源的新鲜度?

Cat*_*kul 5 c++ eclipse eclipse-cdt cmake

我发现自己使用Eclipse处于奇怪的模式.我有一个项目依赖于在eclipse项目中没有正确考虑的资源,这样如果我只更新依赖项中的一个头文件,Eclipse拒绝在命令时构建,显然是因为它认为没有必要.因此,我最终不断向文件添加一个空格并保存以让CDT进行我的出价.

虽然可以将依赖项集成到项目设置中,但项目偶尔会被CMake自动生成工具(我对修补没兴趣)重写,这将覆盖配置,并要求我再次重新配置依赖项,再次.

我希望能够做的只是告诉Eclipse它应该忽略它认为应该发生的事情并遵守构建命令,并让底层make系统完成它的工作(确定应该和不应该构建什么) ).

TL; DR:

  • Eclipse CDT尝试通过观察文件的新鲜度来确定是否构建
  • 它只能正确设置依赖关系
  • 我不想设置依赖项,因为当我向项目添加文件时,项目经常会被CMake覆盖

任何人都知道如何覆盖CDT的决定并强制构建?

sur*_*esh 0

您可以将以下内容添加到您的 makefile 中吗?

FORCE:

%.o : %.cpp FORCE
    $(CXX) -c $(CXXFLAGS) $< -o $@
Run Code Online (Sandbox Code Playgroud)

FORCE 是一个空目标,因此总是新鲜的。因此,无论何时FORCE包含在依赖项列表中,它们都将在所有构建中重新构建。