问题标签 [gcc4.7]
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.
gcc - GCC 4.7,包括
我刚刚编译了 GCC 4.7 来使用stdatomic.h
,但我似乎无法-I
做到。stdatomic.h
似乎住在/usr/include/c++/4.4.3
,但是链接器告诉我它需要附近的目录中的一堆其他文件。如果我-I
都是这样,我仍然会收到错误消息undefined reference to atomic_flag_clear_explicit
。任何想法我应该如何链接这个权利?
gmp - 为什么在 gcc 4.7 中禁用共享与 gmp mpfr mpc 一起进行本机编译?
环境:
cpu:XEON NEHALEM E5530
操作系统:SUSE 10 SP2
gcc:4.1.2
m4,binutils,autoconf,automake:更新为 gcc 4.7 构建所需的最新版本。
PATH/LD_LIBRARY_PATH 设置正确。
对象:gcc php httpd 的本机优化。
但是系统通过检查子目录中的 config.log 添加了 disable-shared,尽管 gcc 4.7 明确配置 --enable-shared --disable-static。ppl 中的配置参数没有在 ppl 的配置帮助中列出。
c++ - GCC-4.7 编译错误
当我将此片段的最后一行添加到我的程序代码中时:
我收到此错误:
是我的错吗?如果是,我做错了什么?如果没有,有人有同样的错误吗?
c++ - 构建 gcc 4.7 后 Clang 3.2 构建损坏
所以我知道 Clang(大部分时间)依赖于 Gnu 的 libstdc++3,但是在构建 gcc 4.7.0 之后(因为太棒了!)我似乎遇到了一个问题,clang 的所有路径都是错误的。我是否需要清理我的构建目录并从头开始clang,特别是它给了我缺少的错误位/c++config.h,尽管它在那里并且用gcc构建得很好
我在 Linux x86,Ubuntu 12.04
c++ - noexcept 指定函数不抛出的条件
我在处理 noexcept 时遇到了一些麻烦。
这只是一个简单的函数,但你看它是如何只在 idx <= 0 时抛出异常的,我不明白。所以在我的规范中,noexcept(idx > 0),我试图告诉编译器这个函数只有在 idx > 0 时才抛出异常。我这样做对吗?
任何帮助表示赞赏,我希望我解释正确。只是一些简单的解释会很棒。
osx-lion - OS X Lion 上的 GCC 4.7:无法计算目标文件的后缀
我知道这个问题已经讨论过(包括那里),而且没有一次。但是,不幸的是,我无法解决这个问题。
所以,我有 OS X Lion,i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1,我尝试构建 gcc-4.7.0。
首先,我已经在 Debian GNU/Linux 上构建了这个编译器,所以我确信不会有任何问题......
因此,我阅读了这本 GCC 手册,并且完全按照描述进行了操作:
至此,MPC、MPFR 和 GMP 下载成功, . /configure也正常。但是在make几分钟后,我得到了这个错误:
据我了解,这不可能是与 MPFR、MPC 或 GMP 动态链接的错误,因为这些库是在 GCC 源代码树中构建的。
在我的 ~/.bash_profile 中:
请帮助我,我将不胜感激任何建议。
c++ - 使用模板别名、继承模板和使用“模板父级”类型时编译错误
我有一个具有以下要求的数据容器:
- 要快:因此是模板而不是正常的继承
- 使用不同的实现
- 能够使用更多方法扩展这些实现
- 数据是通过模板参数指定的,并且需要能够保存指向数据容器项的指针
我想出的解决方案如下:
这导致以下错误(gcc 4.7):
如果我使用T *data
而不是T data
(但我不想要那种间接),或者如果我不使用storage_container_impl
并且T data
直接在storage_container
. 使用storage_container_impl
mixin-style 也不能解决问题。作为container_ref
一个指针,也不应该有它不工作的原因,例如因为模板声明中有一个循环。这是问题的最小化版本。任何帮助,将不胜感激!
installation - 在 Fedora 16 上安装 gcc-4.7 仍然显示 gcc-4.6
我从源代码在 Fedora 16 上构建并安装了 gcc-4.7。但是当我去安装目录(/opt/gcc-4.7.0/bin)并查询版本g++ -v
时,我得到了gcc version 4.6.3 ...
。我在配置过程中没有使用任何后缀-4.7
,所以我安装的二进制文件是g++
. 安装后是否需要任何其他配置?
c++ - g++ 4.7 将运算符 "" 评估为宏扩展的兄弟
我正在将一些代码移至 GCC 4.7(从 4.6 开始)并遇到一些编译器错误并发现GCC 4.7 移植指南中记录的问题:
用户定义的文字和空格
ISO C11 模式下的 C++ 编译器
std={c++11,c++0x,gnu++11,gnu++0x}
支持用户定义的文字,这与一些有效的 ISO C++03 代码不兼容。特别是,现在在字符串文字之后和可能是有效的用户定义文字之前需要空格。获取有效的 ISO C++03 代码
在 C++03 中,TIME宏扩展为一些字符串文字并与另一个连接。在 C++11
__TIME__
中没有扩展,而是operator "" __TIME__
被查找,导致以下诊断:这适用于任何字符串文字,后面跟着一些宏而没有空格。要修复,只需在字符串文字和宏名称之间添加一些空格。
虽然我可以修复错误,但我想知道为什么我必须这样做。__TIME__
是一个宏,所以"something"__TIME__
会在预处理阶段变成"something""15:52:03"
(或类似的),所以编译器永远没有机会看到它operator ""
。
这种行为标准是批准的还是一个错误?
c++ - C++ 编译错误(gcc 4.7)
我正在尝试在第 5.9 章 Bjarne Stroustrup The C++ Programming Language 的末尾做 11 个练习。
当我取消注释 20 行时,我收到此错误:
编译命令:
我做错了什么?