使用 Autotools 在包中添加 .c 文件而不编译它们

Posted

技术标签:

【中文标题】使用 Autotools 在包中添加 .c 文件而不编译它们【英文标题】:Add .c files in a package using Autotools without compiling them 【发布时间】:2013-01-15 19:57:55 【问题描述】:

我有一些 .c 文件包含在某些单元测试中(例如 #include "foo.c")。我不希望构建系统尝试构建这些。它会失败。我只想调用 'make dist' 并将那些 .c 文件包含在生成的包中。

我该怎么做?我试过 noinst_ 前缀和 _DATA 后缀没有效果。

此外,指向特定文档的链接会很棒。我正在阅读 GNU 的相关文档。它很大(应该如此)!

【问题讨论】:

必须指出#include "foo.c"是个坏主意。 *.c 文件应该被编译,*.h 文件应该被包含。永远不要包含*.c 文件!! 【参考方案1】:

你试过了吗:

EXTRA_DIST = foo.c

【讨论】:

有效。此外,它可能是 dist_foo_DATA。不知道为什么我以前认为它不起作用。我只需要定义一些美食家:) @haole:这会将foo.c 安装到$(foodir) 中,如果这是你想要的,那很好。

以上是关于使用 Autotools 在包中添加 .c 文件而不编译它们的主要内容,如果未能解决你的问题,请参考以下文章

R:我如何在包中添加额外的功能?

iOS:将资源(音频)文件包含到应用程序的应用程序文件夹中,而不是添加到包中

如何使用静态库传输资源文件(如何将资源包装在包中)?

Sencha app watch 包含在包中的 scss 文件

golang gin-gonic 和在包中拆分文件

在包中找不到属性“layout_behavior”的资源标识符