Autotools:将项目的一部分切换到不同的编译器

Autotools: Switching part of project to a different compiler

本文关键字:编译器 一部分 项目 Autotools      更新时间:2023-10-16

我正在处理一个使用自动工具的大型旧项目。我想把这个项目的一部分转换成C++(从C)。

如何切换用于项目某一部分的编译器?我不喜欢把这个项目完全分成两部分的想法。目录只有Makefile.am,我想我应该以某种方式在configure.ac中注册它。

您必须在config.ac中定义输出变量CXX(最简单的方法是使用ac_PROG_CXX宏),然后所有带有适当后缀(.cc、.cpp)的文件都将由C++编译器编译。

在源根目录中,您可以有一个config.ac和Makefile.am,其中包含所有编译器选项。因此,您可以使用新的config.ac创建一个子目录,并使用其他选项创建Makefile.am。

您只需要在父配置中添加此行。ac

AC_CONFIG_SUBDIRS([subdir_name])

并在父Makefile.am 中添加新的子目录

SUBDIRS= subdir_name

希望能有所帮助。