首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

gcc能用旧的第三方库编译C++17代码吗?

gcc是GNU编译器套件(GNU Compiler Collection)的缩写,是一款开源的编译器工具。它支持多种编程语言,包括C、C++、Objective-C、Fortran等。

对于能否使用旧的第三方库编译C++17代码,取决于该库是否与C++17标准兼容。如果第三方库已经更新以支持C++17标准,那么gcc是可以使用旧的第三方库编译C++17代码的。

在编译C++代码时,gcc提供了一系列的编译选项,可以指定所使用的C++标准版本。例如,使用"-std=c++17"选项可以告诉gcc使用C++17标准进行编译。

对于第三方库的使用,需要确保库文件与编译器所使用的C++标准版本相匹配。如果第三方库是使用旧的C++标准编译的,并且不支持C++17标准,那么在编译C++17代码时可能会出现兼容性问题。

腾讯云提供了一系列的云计算产品,包括云服务器、云数据库、云存储等。这些产品可以帮助用户构建和部署各种应用程序。具体推荐的腾讯云产品和产品介绍链接地址,可以根据具体的需求和场景进行选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

升级GCC版本到8.3(多GCC版本共存)

升级GCC版本到8.3 公司tlinux2.2自带GCC4.8.5(基于CentOS7), 勉强支持C++11, 但目前C++主流社区已经广泛使用C++14, C++17, 老版本GCC对于新语言特性使用是个比较大障碍..., 目前工作室打算在研未上线项目逐步向TencentOS3进行迁移, TencentOS3自带GCC版本是8.3, 该版本已经比较完整支持了C++17特性, 而我们原来代码大多是基于GCC4.8...本文主要是针对笔者当前遇到情况, 介绍怎么升级GCC8.3并同时保留旧版本GCC4.8.5, 这样可以更好安排整个过渡阶段开发节奏, 等所有代码适配GCC8.3后再统一编译环境到GCC8.3..../contrib/download_prerequisites 此命名会自动下载GCC编译需要几个依赖. 3.配置和编译 前文也提到了, 我们需要同时保留老版本GCC, 所以配置项里需要指定安装目录...多GCC版本导致ABI兼容问题 需要特别注意是ABI兼容问题, 有部分库我们可能是直接使用第三方, 没有源码, 那么可能对应依然是使用GCC4.8编译, 默认开启C++11后GCC会同样更改应用程序

8.7K20

C++ 实用指南

一些问题 仅举几例: 节奏太慢 节奏太快 特性混乱 / 复杂性 编译时间慢 缺乏依赖管理 我们来仔细研究一下。  节奏太慢 2017 年,我们迎来 C++17。...没有人愿意使用旧语法和结构来编写代码。...这意味着你可以使用更多助手和子系统,而无需查找第三方。这绝对会让你生活更轻松。 对于移动语义,你可以依赖类型,因为它们会为你完成正确工作。...最近,我读到了一条有趣评论,说 Cpp 程序员在不接触模板元编程甚至异常等高级内容情况下,也持续多年表现出色。这在很大程度上取决于项目的代码风格。...有时你会收到一些关于不推荐使用内容或删除特性警告(如 C++17auto_ptr),但即使在这种情况下,你也可以将编译器切换到一些较旧 C++ 标准。

52220
  • 关于编译重要概念总结

    例如C语言是一门编译型语言,编译型语言首先将源代码编译生成机器语言,再由机器运行机器码(二进制)。对于编译型语言,绕不过就是编译器。...将函数中相应代码组合到目标文件中,汇编文件和系统文件链接起来,生成在特定平台可执行程序。 最早操作系统中,是没有链接器,由加载器loader进行工作,所以ld命名由此而来。...对于 .c和.cpp文件,g++则统一当做cpp文件编译 使用g++编译文件时,g++会自动链接标准STL,而gcc不会自动链接STL gcc编译C文件时,可使用预定义宏是比较少...它实际上是将经典开源 C语言 编译GCC 移植到了 Windows 平台下,并且包含了 Win32API ,因此可以将源代码编译为可在 Windows 中运行可执行程序。...使用 Windows C语言运行库,因此编译程序不需要第三方 DLL ,可以直接在 Windows 下运行。

    95420

    C4droid8.0汉化版下载

    C4droid8系列GCC版本是10.2,6.97版GCC为9.1 0x2. 所有版本自动整合了GCC插件, 所以不需要额外下载GCC 0x3....0xa 由于汉化过程中不当处理导致QT项目级别无法正常编译, 有QT相关需要的话请下载C4droid8.0原版 更新日志: 8.01 QT不在依赖于第三方应用(不建议使用QT) GCC更新为10.2 支持中文标识符和...解决了原版中文导出包和中文断点调试乱码bug 修改了默认编译参数,修改gcc参数-std=c11(原版为c99) ;g++改为c++17并解决了c++17异常抛出bug。.../configure编译会出现mkdir /temp/xxx 没有此目录错误,蜜汁bug,怎么能在根目录下直接读写文件呢(起码也要挂载读写分区)。...A:设置->代码补全 ps:调整编辑器字体和调整终端字体是两个不同概念不要混淆,前者是写代码字体,后者是运行后字体 7.

    1.6K80

    C++17 在业务代码中最好用十个特性

    WXG 编译器升级到 gcc7.5 已有一段时间,笔者所在项目组也已经将全部代码升级到 C++17。在使用了 C++17 一年多之后,笔者总结了 C++17 在业务代码中最好用十个特性。...语法糖 这里所说语法糖,并不是严格意义上编程语言级别的语法糖,还包括一些能让代码更简洁更具有可读性函数和: 结构化绑定 c++17 最便利语法糖当属结构化绑定。...捕获,但是 gcc 并没有遵循 c++标准,所以以下代码gcc 可以编译,clang 则编译不过 for(const auto& [key, value]: map){     [&key, &value...c++17 std::pair p3{3.14, "pi"s}; if constexpr if constexpr 语句是编译 if 判断语句,在 C++17 以前做编译条件判断往往通过复杂SFINAE...return {ret}; } 需要注意是,c++17 只提供了一个级别的 variant 实现,没有对应模式匹配(Pattern Matching)机制,而最接近std::visit又缺少编译优化支持

    2.6K20

    C++雾中风景番外篇4:GCC升级二三事

    最近将手头上负责项目代码GCC 4.8.2升级到了GCC 8.2。...(终于可以使用C++17了,想想后续开发也是很美好啊~~)不过这个过程之中也遇到了一些稀奇古怪问题,在这里做一个简单记录,希望后续有同学遇到类似的问题作为参考。...上述代码GCC 4.8.2之中并不会出现问题,但是一旦切换到GCC8.2之后,并且在编译优化等级大于1时候,就会core在这个函数执行代码位置。...所以为了规避上述问题,笔者这里推荐使用GCC编译时开启编译选项:-Werror=return-type。这样,有上述返回值问题代码就会在编译期间被编译器识别并报错。...GCC8.2也囊括了绝大多数C++17新特性和部分C++2a特性,各种新语法糖在编码过程之中也极大提高开发效率。Enjoy your modern CPP。

    78931

    一文看尽C++ 过去这一年

    现在,你可以构建复杂代码,如boost::hana或range v3。 既然C++ 11/14在所有主流编译器中都得到了支持,那么就不存在任何理由不使用现代C++了。 ?...你可以在这里下载一个免费官方文档最终版:N4700, 2017-10-16, PDF。 支持C++编译一份完整列表可以参考这里:C++17 编译器支持。...关于C++17语言特性: 从Clang版本5.0、 GCC版本8.0、 Visual Studio版本15.7和Intel C++ Compiler版本19.0.1开始,所有编译器都支持C++17语言特性...原因可能是MSVC STL(标准模板实现是开源,我们可以预期一些代码将被移植到其他标准实现中。 ? C++20 关于C++20讨论今年占据了主导地位。...各种工具 当编译器帮助C++代码完成了主要任务时,我们也不能忘记其他工具重要性。

    3.4K10

    Modern C++,学炸了!!

    它们包括但不限于: 指针和引用概念 指针与内存关系 程序编译过程,静态链接和动态链接 static、const、#define用法和区别 C和C++区别 内存中栈和堆分配 C++ 面向对象语法...C++17 就 C++14 这种改变,对旧代码不会产生任何影响,但可以让后来开发更加灵活。...各种技巧和避坑指南书《Effective Modern C++》,这本书也不错,推荐一下: 五、常用编译器对 C++11/14/17 支持情况 我目前公司项目也全部使用 C++17 开发,对于...对于 gcc/g++ 编译器,支持 C++11 新标准最低版本是 gcc/g++ 4.8,支持 C++14 是 gcc/g++ 4.9,gcc/g++ 7.3 完美支持 C++17 大多数语言特性。...网络 uWebSocket 是一款开源 WebSocket ,最新版使用了大量 C++17 语法,美中不足是这个代码存在不少 bug,我在项目中使用了它,但修改了其大量 bug,有兴趣朋友也可以下载下来看一下

    3.2K10

    c++17好用新特性总结

    这里总结下C++17在业务代码中好用几个特性。...在C++17中,可以捕获*this, *this是当前对象一个拷贝,捕获当前对象拷贝,能够确保当前对象释放后, lambda表达式安全调用this中变量和方法。...捕获,但是gcc并没有遵循c++标准,所以以下代码gcc可以编译,clang则编译不过。...需要注意是,c++17只提供了一个级别的variant实现,没有对应模式匹配(Pattern Matching)机制,而最接近std::visit又缺少编译优化支持,所以在c++17中std...具体可参考: 《[译]C++17,标准新引入并行算法 》 《STL并行算法库》 其他特性: 除此之外,C++17还增加了一些其他特性,文中没有一一列出。

    3.3K10

    云课五分钟-0Cg++默认版本和升级-std=c++17

    添加必要软件源: 有时,默认软件源中可能没有您需要软件包版本。您可能需要添加第三方软件源。但请注意,添加第三方软件源有一定风险,请确保您信任该软件源。...然而,实际上gcc也可以编译C++代码,只是需要手动链接所需。 关于g++和gcc其他方面的区别: 支持: 使用g++编译时,它会默认链接标准C++。...但是,如果你正在编译纯C代码,并且希望避免链接不必要C++,那么gcc是一个更好选择。...静态链接将所有代码嵌入到最终可执行文件中,而动态链接则是在运行时加载所需。 插件与扩展 gcc和g++支持插件和扩展,这可以增强编译功能。...g++会自动链接C++标准。 通过这个例子,你可以看到gcc和g++在处理C++代码区别。虽然它们都可以编译C++代码,但g++在编译时会链接C++标准,这使得编译C++代码时更为方便。

    1.2K40

    C++ 动态新闻推送 第26期

    atan2f算法 代码在这里,原理没研究 Stricter Expression Evaluation Order in C++17 这段代码打印是什么样?...in it Automate your C library type-based overload resolutions with C++17 给了一个糊c代码方案 比如 Ipp8u*.../05_fork_join.cpp Algorithms from a Compiler Developer’s Toolbox 介绍编译器开发人员用到算法,这里不如直接看 编译器设计第三版 这本书,...讲了很多 Weak Interfaces Weak Defences 讲的是之前讲过多次参数误用,参数类型一样多个参数,有可能顺序写错造成bug,或者不同类型但是互相转化那种,也有可能顺序错了但是程序编译没啥问题...后续支持方向 Executors: The Art of Generating Composable APIs 还是hpx,他们也实现了executor代码 项目 https://github.com

    59020

    新版GCC和LLVM+Clang终于Release啦

    GCC编译 构建脚本主要变化如下: 增加了常用工具组件: autoconf, automake, libtool, pkgconfig, gdbm 增加了常用依赖: openssl (仅作为内部工具组件依赖...,默认不加入到搜索列表) 增加了常用系统级依赖: libexpat,libxcrypt,libffi 增加了常用压缩算法库: zlib,lz4,zstd (gcc 10开始支持zstd作为符号压缩算法...,所以几个常用编译了) Python升级到3,并且使用内置openssl依赖 增加了用于rpmbuild打包文件 GCC 11大致(C/C++)内容如下: 编译GCC时需要工具链支持 C++11...+libc++abi+libc++编译 构建脚本主要变化如下: 也是Python升级到3,允许复用GCC工具链中Python。...增加了常用依赖和工具: swig,zlib,libffi,libedit lldb改用libedit编译 改为使用 Git 下载 https://github.com/llvm/llvm-project.git

    73220
    领券