用户定义的用于g ++编译的C ++文件扩展

时间:2016-11-22 11:19:51

标签: c++ c++11 g++4.9

出于某种原因,我想使用扩展名.cxy作为c ++源代码。比如说,文件名为abc.cxy。但是,我的g++(4.9.2版本)无法编译。 我正在编译为:

g++ -o abc.oxy abc.cxy

它的抱怨是:g++: warning: conn.cxy: linker input file unused because linking not done 而且,目标文件abc.oxy尚未生成。 然而,如果我的扩展名为.cxx,则编译为:

g++ -o abc.oxy abc.cxx

正在制作abc.oxy 我不允许使用.c, .cpp, .cxx以外的扩展程序吗?

1 个答案:

答案 0 :(得分:5)

尝试g++ -o abc.oxy -x c++ abc.cxy

g++无法从自定义后缀中推断出正确的语言,并且无法将其作为源推断出来,它会直接作为目标文件传递给链接器。

  

我是否不允许使用.c, .cpp, .cxx以外的扩展程序?

如果您希望GCC自动推断源语言,则不行。约定已经​​到位,因此我们不必明确,但您仍然可以使用-x选项。