c++ - 命令: rm -f *~ core $(INCDIR)/*~?中的 'core'是什么

标签 c++ makefile

我正在学习 Makefile!我包含了整个 rm 命令,以防某些参数相互依赖:

rm -f \*~ core $(INCDIR)/\*~

我假设 C++ 生成了一些以“~”结尾的文件,所以我们删除了这些文件,但核心 是什么? Google 返回的唯一内容是似乎假定其功能已为人所知的教程,但我找不到任何只是说“‘核心’是……”的内容

Rider:说“_OBJ”是一个目标文件列表,“ODIR”是一个目录。然后……

$(patsubst %, $(ODIR)/%, $(_OBJ))

... 获取“_OBJ”中的任何文件名 fname 并将其替换为“$(ODIR)/fname”——从而将其移动到目录“$(ODIR)” name fname,正确吗?

最佳答案

一些(全部?)Posix 系统具有称为核心转储 的功能。 (默认情况下,它在大多数 Linux 发行版中被禁用。)当您的应用程序崩溃时,您可能会看到类似以下内容:

Segmentation fault (core dumped)

如果启用核心转储,将创建一个名为 core 的文件,其中包含有关程序崩溃时的状态信息,因此您可以使用像 这样的工具>gdb 在崩溃发生后进行调试

参见 here了解更多信息。

关于c++ - 命令: rm -f *~ core $(INCDIR)/*~?中的 'core'是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31999634/

相关文章:

c++ - 在 C++ 代码中创建 XML

c++ - VPATH 中的递归搜索?

c++ - 编译.h文件

c++ - CreateProcessWithLoginW - 重定向 STDOUT

c++ - 有人可以解释一下 union 在这行代码中是如何工作的以及数字是如何交换的吗?

c++ - CMake 用户构建的库;无法为目标指定链接库

shell - 在 make 变量中的命令上执行 shell 函数

ubuntu - ',' 标记之前的预期表达式

c++ - 范围解析运算符的评估

c++ - 分配 vector 而不复制它们