g++提醒:file format not recognized; treating as linker script

本文分享了一次使用g++编译器时遇到的关于源码文件后缀的问题。作者尝试编译一个名为test1_1的文件时遭遇失败,但更改文件名为test1_1.cpp后,编译成功。文章详细列举了GCC编译器对不同后缀文件的处理方式,包括C、C++、Objective-C、汇编等语言的源码和预处理文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天,我用g++来编译一个文件时,出现了这种错误。要编译的源码文件名为test1_1。后来,我把文件名改为test1_1.cpp就可以正常编译了。这是怎么回事???

哎,原来是我傻逼了,原来GCC编译器套件对源代码的后缀是有要求的,它根据后缀来判断源码类型的。

       这是我查阅到的资料:

         GCC文件后缀名:

  .c为后缀的文件,C语言源代码文件; 
  .a为后缀的文件,是由目标文件构成的档案库文件; 
  .C,.cc或.cxx 为后缀的文件,是C++源代码文件; 
  .h为后缀的文件,是程序所包含的头文件; 
  .i 为后缀的文件,是已经预处理过的C源代码文件; 
  .ii为后缀的文件,是已经预处理过的C++源代码文件; 
  .m为后缀的文件,是Objective-C源代码文件; 
  .o为后缀的文件,是编译后的目标文件; 
  .s为后缀的文件,是汇编语言源代码文件; 
  .S为后缀的文件,是经过预编译的汇编语言源代码文件。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值