问题标签 [gcc5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
95 浏览

c++ - 左值 istringstream istream_iterator 需要吗?

在 Visual Studio 中给定 astring foo我可以通过执行以下操作将单词分解为 a vector

但这不会在 gcc 5.1 中编译。我得到错误:

从类型的右值对类型std::istream_iterator<std::basic_string<char> >::istream_type&{aka }的非常量引用的无效初始化std::basic_istream<char>&std::basic_istream<char>

现在我知道 gcc 有一个由我们自己的Jonathan Wakely修复的错误。这是该错误的扩展还是我在istringstream这里使用右值是非法的?

0 投票
0 回答
48 浏览

gcc - 使用 GCC5 编译 LLVM 3.3,未定义对 c11 类型签名的引用

我在编译我的项目以将 LLVM 3.3* 与 GCC5 一起使用时遇到问题。我得到未定义的引用,例如 `llvm::sys::getDefaultTargetTripleabi:cxx11'

abi 标签表明这是 ABI 与 GCC5 不匹配的问题。我知道我可以做一些事情_GLIBCXX_USE_CXX11_ABI,但我不明白为什么它不起作用。我的 projedt 和 LLVM 都使用相同的 GCC 编译。

关于如何使它工作的任何想法?

*我正在升级,但想在升级到新的 LLVM 版本之前让当前的开发版本正常工作。我将我的开发机器升级到 Ubuntu 16.04,它上面安装了新的 GCC。

0 投票
1 回答
348 浏览

c++ - gcc Compiler Segmentation Fault When Assigning from Value Captured Variable to Lambda Parameter

I was working on this answer and wrote the code:

When compiled on gcc this code gives the error:

Internal compiler error: Segmentation fault it = replacement;

I've tried it locally on gcc 5.1, 5.2, and 5.3 it gives the same compiler error on all of them. Clang seems happy with the code as well as Visual Studio. This is just a compiler bug and not a mistake I've made, right?

0 投票
2 回答
1032 浏览

c++ - 使用 g++ 5.3.1 编译的程序运行速度比使用 g++ 4.8.4 编译的相同程序慢 3 倍,相同的命令

最近,我开始使用 Ubuntu 16.04 和 g++ 5.3.1 并检查我的程序运行速度慢了 3 倍。在此之前,我使用过 Ubuntu 14.04、g++ 4.8.4。我使用相同的命令构建它:CFLAGS = -std=c++11 -Wall -O3.

我的程序包含循环,充满了数学调用(sin、cos、exp)。你可以在这里找到它。

我尝试使用不同的优化标志(O0、O1、O2、O3、Ofast)进行编译,但在所有情况下都会重现问题(Ofast 两种变体运行速度更快,但第一个变体运行速度仍然慢 3 倍)。

在我的程序中,我使用libtinyxml-dev, libgslcblas。但是它们在两种情况下都具有相同的版本,并且在性能方面(根据代码和 callgrind 分析)在程序中没有任何重要的作用。

我已经进行了分析,但它并没有让我知道它为什么会发生。 Kcachegrind 比较(左边较慢)。我只注意到现在该程序使用与 Ubuntu 14.04libm-2.23相比。libm-2.19

我的处理器是 i7-5820,Haswell。

我不知道为什么它会变慢。你有什么想法?

PS 下面你可以找到最耗时的函数:

进一步调查。我写了以下简单的程序:

我真的很想知道为什么这个简单的示例程序在 g++ 4.8.4 libc-2.19 (libm-2.19) 下比在 g++ 5.3.1 libc-2.23 (libm-2.23) 下快 2.5。

编译命令是:

使用其他优化标志不会改变比率。

我怎么知道是谁,gcc 或 libc,减慢了程序的速度?

0 投票
1 回答
698 浏览

ubuntu - Ubuntu未定义参考错误

我正在尝试编译一个用 C++ 编写的程序。我收到此消息错误:

我搜索并找到了这篇文章:Undefined reference to process(std::__cxx11::basic_string ...) when compiling affdex linux sample applications

我认为发生此错误是因为我使用的是 GCC 版本 5。所以我尝试将其降级到 4.8 并使用 gcc-4.8 编译程序。但我仍然收到此错误,这是输出:

我不知道为什么,我应该将 gcc 降级到旧版本吗?

0 投票
1 回答
2477 浏览

c++ - 在使用 C++ 进行虚拟继承期间调用构造函数

这是我在 learncpp.com 上阅读本节时遇到的一个问题。我使用了此处列出的代码,然后对测试进行了轻微改动。

背景

虚拟继承创建对基类的公共引用,这有两个作用。

首先,它消除了歧义,因为只有一次创建了基成员的副本(例如,将 print() 函数添加到 PoweredDevice 并在 main() 中调用它会导致编译器错误)。

其次,最派生类负责调用基构造函数。如果中间类之一试图调用初始化列表中的基本构造函数,则应忽略该调用。

问题

当我编译并运行代码时,它返回:

它应该返回:

当我使用 GDB (7.11.1) 跟踪执行时,它表明中间函数也在通过初始化列表调用 PoweredDevice——但这些应该被忽略。PoweredDevice 的这种多次初始化不会导致任何成员的歧义,但确实给我带来了麻烦,因为代码执行了多次,而它应该只发生一次。对于更复杂的问题,我不习惯使用虚拟继承。

为什么这些中间类仍在初始化基类?这是我的编译器(gcc 5.4.0)的怪癖还是我误解了虚拟继承的工作原理?

编辑:代码

0 投票
1 回答
2879 浏览

nvidia - gcc - openacc - 编译的程序无法正常运行

最近,GCC 社区已经做出了一些努力,在他们的编译器中支持 OpenACC。所以,我想尝试一下。

使用这个与 GCC 网站上的主要文档很接近的分步教程(教程),我能够编译和构建支持 OpenACC 的GCC 6.1 。

然后,我使用以下命令编译了我的程序:

gcc pi.c -fopenacc -foffload=nvptx-none -foffload="-O3" -O3

而且,一切都没有任何错误。

执行没有错误,但没有正确答案。

这是我的 C 代码和正在运行的程序的输出:

这是运行后的输出a.out

有任何想法吗?

0 投票
1 回答
1317 浏览

c++ - 在 Ubuntu 16.04 下构建 Proxygen

我想用 Ubuntu 16.04 从 github 构建 Facebook 的 Proxygen c++ http 库。这是我设置的环境以及 deps.sh 命令安装依赖项:

这让我大部分时间都建立了它的愚蠢依赖,但我得到了一个不完整的类型错误:

有没有人尝试或解决过这个问题?我还不熟悉代码库。蒂亚。

0 投票
1 回答
49 浏览

c++ - 使 GCC 5.1.0 以非 root 用户身份与 CUDA 7.5 一起工作

我已经通过谷歌进行了几轮调查,但没有成功。我的问题有点独特——我有一大段代码有很多 C++11 依赖项,当我使用 GCC 5.1.0 编译时运行良好,但在 GCC 4.8.3 上抛出一大堆错误,后者适用于 CUDA。我还需要对 CUDA 做一些工作,由于 GCC 5.1.0 版本,这当然不起作用。这类似于之前提出的许多问题,其建议涉及编辑 host_config.h 文件以删除有问题的行。但是,我正在处理一个机构的集群,并且无法编辑该文件,因为它是由系统管理员安装的。我可以使用模块加载命令加载任何 GCC 版本,但如果我降级到较低的 GCC 版本,我们的代码会出现 C++11 依赖问题。有什么建议吗?

0 投票
0 回答
158 浏览

c++ - Mac OSX 10.9.3 上的 Homebrew GCC5 安装错误

我正在尝试使用 homebrew (brew install gcc5) 在 OSX 10.9.3 (Mavericks) 上安装 gcc5 并收到以下错误。我可以在另一台机器上的 OSX 10.11.1 (El Capitan) 上安装它。但是由于其他软件兼容性问题,我想避免升级操作系统。找不到此问题的任何已知错误。任何意见,将不胜感激。