GNU Make 中 CPPFLAGS 和 CXXFLAGS 的区别

发布于 2024-07-13 03:35:14 字数 45 浏览 6 评论 0原文

GNU Make 中的 CPPFLAGS 和 CXXFLAGS 有什么区别?

What's the difference between CPPFLAGS and CXXFLAGS in GNU Make?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

想你只要分分秒秒 2024-07-20 03:35:14

CPPFLAGS 应该是 C PreP 处理器的标志; CXXFLAGS 用于 C++ 编译器的标志。

make 中的默认规则(至少在我的机器上)将 CPPFLAGS 传递给几乎所有内容,CFLAGS 仅在编译和链接 C 时传递,而 CXXFLAGS 仅在编译和链接 C++ 时传递。

CPPFLAGS is supposed to be for flags for the C PreProcessor; CXXFLAGS is for flags for the C++ compiler.

The default rules in make (on my machine, at any rate) pass CPPFLAGS to just about everything, CFLAGS is only passed when compiling and linking C, and CXXFLAGS is only passed when compiling and linking C++.

¢蛋碎的人ぎ生 2024-07-20 03:35:14

默认情况下,CPPFLAGS 将提供给 C 预处理器,而 CXXFLAGS 将提供给 C++ 编译器。

GNU Make 手册 是解决此类问题的一个很好的资源(请参阅隐式变量)。

By default, CPPFLAGS will be given to the C preprocessor, while CXXFLAGS will be given to the C++ compiler.

The GNU Make Manual is a good resource for questions like this (see Implicit Variables).

掩饰不了的爱 2024-07-20 03:35:14

CPPFLAGS 用于 C 预处理器,而 CXXFLAGS 用于 C++ 编译器。

请参阅此处

CPPFLAGS are for the C preprocessor, while CXXFLAGS are for the C++ compiler.

See here.

南风几经秋 2024-07-20 03:35:14

默认情况下,它们被设置为某项。

在实践中,您需要了解每个项目的用途。 实际上没有人使用 make 中内置的这些默认值,例如,如果您依赖 CPPFLAGS 表示“C 预处理器的标志”,您会发现您关心的项目已使用它来表示“C++ 编译器的标志”反而。 CFLAGS 标志是否传递到 C++ 编译行? 有时。 不总是。 等等等等等等

By default, they're set to something.

In practice, you need to know what every single project does. Virtually no one uses those defaults built into make, and if you rely on, for example, CPPFLAGS meaning "flags to the C preprocessor" you'll find that the project you care about has used it to mean "flags to the C++ compiler" instead. And does the CFLAGS flag get passed to C++ compile lines? Sometimes. Not always. Etc, etc, etc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文