我正在开发一个使用autotools的大型旧项目。我想将项目的一部分切换到C ++(来自C)。
如何切换用于项目某个部分的编译器?我不喜欢将项目完全分成两部分的想法。该目录只有Makefile.am
,我想我应该在configure.ac
以某种方式注册。
答案 0 :(得分:4)
您必须在configure.ac中定义输出变量CXX(最简单的方法是使用AC_PROG_CXX宏),然后所有具有适当后缀(.cc,.cpp)的文件将由C ++编译器编译。
答案 1 :(得分:1)
在你的源根目录中,你有一个带有所有编译器选项的configure.ac和Makefile.am。因此,您可以使用新的configure.ac和Makefile.am以及其他选项创建子目录。
您只需在父configure.ac
中添加此行AC_CONFIG_SUBDIRS([subdir_name])
在父Makefile.am
中添加新的子目录SUBDIRS= subdir_name
希望可以提供帮助。