`
febird
  • 浏览: 254268 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

gcc 一个恶心的 bug

GCC 
阅读更多

我的测试项目下面有 4 个 .cpp 文件, 测试我写的模版(在另一些 .h 中)。

测试的编译选项主要是 -g3 -O0 ,无优化

当我改变了模版头文件,因为用到的测试代码在 main.cpp 中(包含了模版头文件),我把 main.o 删掉,重新编译,结果模版头文件的修改就是不能生效,跟没改一样,搞了很多次,都是不对,我一直以为是自己的代码有问题。在我快要疯掉时,我 make clean 所有 .o 删掉,再编译,竟然好了!

我操!我又没有使用预编译头,所有测试代码都在 main.cpp 中,它竟然把 main.cpp 代码编译到了其它 .o 中!

分享到:
评论

相关推荐

    gccversion 12.1.0(GCC)

    GCC 12.1.0是GCC系列的一个重要版本,通常包含最新的优化和改进,旨在提高代码性能、稳定性和兼容性。这个版本可能包含了对新语言标准的支持,例如C++17或C++20等,这些标准引入了许多新的特性和语法改进,使开发者...

    离线安装GCC与GCC-C++

    GCC(GNU Compiler Collection)是GNU项目的一部分,它是一个开源的编译器套件,主要用于C、C++、Objective-C、Fortran、Ada以及Go等编程语言的编译。GCC不仅提供编译器,还包括预处理器、链接器和其他相关工具,...

    gcc manual gcc手册

    GCC(GNU Compiler Collection)是GNU项目的一个核心组件,它是一个开源的编译器系统,用于将源代码编译成可执行程序。GCC支持多种编程语言,包括C、C++、Objective-C、Fortran、Ada以及Go等。GCC手册是学习和使用...

    gcc、gcc++ 离线安装包

    GCC(GNU Compiler Collection)是GNU项目的一部分,是一个开源的、跨平台的编译器套件,主要用于C、C++、Objective-C、Fortran、Ada、Go等编程语言。它不仅包含编译器,还包括预处理器、链接器和其他相关工具。在...

    gcc _gcc_gcc

    标题“gcc _gcc_gcc”可能是在强调`gcc`这个关键词,`gcc`是GNU Compiler Collection(GNU编译器集合)的缩写,是一个广泛使用的开源编译器,支持C、C++、Objective-C、Fortran、Ada、Go等多种编程语言。 **描述...

    tdm64-gcc安装包

    在Windows平台上,`tdm64-gcc` 提供了一个易于安装和使用的GCC环境,特别适合开发者在Windows上进行跨平台开发。 **关于GCC** GCC最初由GNU创始人理查德·斯托曼(Richard Stallman)开发,目的是创建一个自由的、...

    gcc_广义互相关_gcc时延_GCC互相关_gcc

    在简单的情况下,如果一个信号A滞后于另一个信号B某个固定的时间Δt,那么它们的互相关函数在Δt处将达到峰值,这个Δt就是我们寻找的时延。 然而,当信号受到噪声、失真或非线性影响时,简单的互相关可能无法准确...

    GCC-Algorithm.rar_GCC matlab_GCC 广义互相关_GCC录音_gcc_广义互相关GCC

    2. **GCC-PHAT(相位加权广义互相关)**:GCC-PHAT是GCC的一个变种,它通过对每个频率成分的相位进行加权,降低了多径传播的影响,从而提高了时间延迟估计的精度。在音频信号处理中,GCC-PHAT特别适合于声源定位,...

    gcc各个版本下载_gcc-4.8.5.rar

    标题“gcc各个版本下载_gcc-4.8.5.rar”指出我们要关注的是GCC的一个特定版本——4.8.5。这个版本的GCC是在2015年发布的,它是GCC 4.x系列的一个稳定版本,提供了一组强大的编译优化,并且支持多种硬件平台和操作...

    gcc-8.5.0.tar.gz.zip

    8.5.0是一个中期版本,可能包含了自上一个主要版本以来的一系列bug修复、性能优化以及新功能的引入。 源码编译安装的过程通常包括以下步骤: 1. **解压**:首先,你需要将`gcc-8.5.0.tar.gz`这个文件解压缩。这...

    gcc4.8.2及其依赖包.zip

    GCC(GNU Compiler Collection)是GNU项目的一个核心组件,它是一个开源的编译器套件,支持C、C++、Objective-C、Fortran、Ada、Go等多种编程语言。在这个压缩包"gcc4.8.2及其依赖包.zip"中,包含了GCC 4.8.2的源...

    GCC 11.2 离线安装包

    版本11.2是GCC的一个重要更新,它包含了自上一个版本以来的众多改进和修复。 GCC 11.2的离线安装包通常用于没有网络连接或者网络环境不稳定的情况,确保在本地环境下完成编译工具的安装。这种安装方式特别适用于...

    gcc yum源安装

    YUM是一个高级包管理工具,能够从服务器上下载、安装、删除和管理RPM包,并且还能自动解决依赖问题。这对于快速安装GCC不同版本非常重要。 从文件提供的内容片段中,我们可以得知在CentOS 6.x系统中安装GCC 4.8、...

    gcc 4.8.3 for windows

    **GCC 4.8.3 for Windows:一个关键的开源编译器** GCC(GNU Compiler Collection)是GNU项目的一部分,由自由软件基金会(FSF)维护。它是一个强大的多语言编译器,支持C、C++、Objective-C、Fortran、Ada、Go等...

    gcc9.3rpm离线安装包

    GCC(GNU Compiler Collection)是GNU项目的一个核心组件,它是一个开源的、跨平台的编译器集合,用于将源代码转换成可执行程序。GCC 支持多种编程语言,包括C、C++、Fortran、Ada和Go等。在Linux和类Unix系统中,...

    gcc-8.5.0源码包

    GCC(GNU Compiler Collection)是GNU项目的一部分,是一个广泛使用的开源编译器套件,支持多种编程语言,包括C、C++、Objective-C、Fortran、Ada、Go等。在本篇文章中,我们将深入探讨GCC 8.5.0的源码,并学习如何...

    aarch64-linux-gnu-gcc gcc version 7.5.0 (Linaro GCC 7.5-2019.12

    版本1.1.1g是该库的一个稳定版本,修复了之前版本中的一些安全问题和bug,为开发者和系统管理员提供了可靠的安全保障。 标签"openssl"进一步确认了我们关注的关键技术是与OpenSSL相关的,这可能意味着讨论的重点将...

    gcc_广义互相关_gcc时延_GCC互相关_gcc_源码.rar

    总结来说,这个压缩包提供的资源可能包括了一个使用GCC编译器编译的、实现广义互相关算法的代码库,用于处理信号处理中的时延估计问题。对于学习信号处理、通信系统和使用GCC进行优化的开发者来说,这是一个宝贵的...

Global site tag (gtag.js) - Google Analytics