问题标签 [gcc7]
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.
c - 使二进制文字看起来更清晰的分隔符
我正在尝试以更清晰的格式编写二进制文字。
我知道可以对整数文字执行以下操作:
我认为这适用于二进制文字,所以我尝试了:
对于第一个下划线之后的所有内容,这给了我一个“无效的后缀”错误。
是否有下划线的替代方法可以让我以更简洁的方式编写二进制文字,而不仅仅是:
c++ - 使用不同编译器/环境的 boost 序列化的运行时问题
我有一段代码可以序列化文件中的结构。
现在从同一台计算机上的不同程序读取序列化对象
此代码在我的 macbook(clang 编译器)上按预期运行,但实际上在 pc(gcc 7.5)上崩溃。我在两种情况下都使用相同的 cmake 脚本构建代码。抛出的异常是
我只是想知道问题可能是什么(以及解决方案是什么样的!)有什么建议吗?
编辑:回答关于我定义一个参数类的类的评论
一组参数组成一个节点
和一个 std::vector 的节点使模型
为了完整起见,这里是模型头的包含部分
c++ - 在多线程代码中使用的这个 C++ Singleton 中可能发生了什么以及如何修复该行为?
有这个简单的单例函数:
首先,它每次都正确初始化(我有检查它的断点),并通过以下方式从多个线程多次调用它:
或者
基本上,它使用了这个答案的实现:https ://stackoverflow.com/a/1008289/1423254 ,我个人多次使用它,认为它是线程安全的,应该根据:https:// stackoverflow.com/a/1661564/1423254。
该代码适用于生产环境,但不适用于我的笔记本电脑本地,通常在返回的配置中有一些垃圾:
那里发生了什么以及如何解决它,所以我没有得到那些垃圾数据?
我什至尝试在整个Singleton
函数体内放一个锁,但没有帮助。
我们64bit GCC 7.5.0
用于编译。
编辑:我应该补充一点,多个线程Singleton
正确调用该函数,只有 1 个单独的线程存在问题,有时会返回垃圾。
c - 为什么在使用 vmovl_u8 指令时出现汇编错误?
我有以下 armv8-a 代码,但出现汇编错误。我无法找出错误
在 gcc 7.4.0 版本上编译时出错(命令使用 gcc -O3 main.c):
我有类似的代码,不使用 vmovl_u8 指令并成功编译。使用 vmovl_u8 指令时出错。请帮我。
gcc - 为什么在使用 armv8-a 的 vmovl_u8 指令时出现汇编错误?
我有以下 armv8-a 代码,但出现汇编错误。我无法找出错误
在 gcc 7.4.0 版本上编译时出错(命令使用 gcc -O3 main.c):
我有类似的代码,不使用 vmovl_u8 指令并成功编译。使用 vmovl_u8 指令时出错。请帮我。
gcc - 针对不同操作系统的交叉编译 GCC
我需要为 x86-64 suse 主机和 x86-64 旧 suse 主机构建一个“交叉”编译器。两台机器的 gcc 和 glibc 版本非常不同。
我正在关注本指南https://www6.software.ibm.com/developerworks/education/l-cross/l-cross-ltr.pdf并希望将 gcc 链接到 glibc 而不是 newlibc。
我的问题是第一阶段 gcc 的命令
导致zlib的make过程出错:
我尝试交叉编译的 gcc 版本是 7.5.0,这是我在主机上本地拥有的版本,所以我认为这将是最佳选择。
c++ - GCC 7.3 是否包含所有 c++17 功能?
我正在尝试通过 CMake 命令构建使用 c++17 方言的 CMake 项目:
我看到它设置了编译器标志“-std=c++1z”,但我仍然收到错误,表明 c++ 方言不足:
错误:未在此范围内声明“减少”错误:未在此范围内声明“to_chars_result”
假设来自 c++ 17
当我用 Windows 构建这个项目时,它会编译
linux - 为什么我在尝试使用通过 ld --verbose 获得的默认链接器脚本时得到 /usr/bin/ld: internal error ../../ld/ldlang.c 4986?
找出某个变量在内存中的位置我希望在 .data 旁边创建一个新部分,然后使用 PROVIDE。第一步是获取当前的链接器脚本,ld --verbose
然后用它来链接-T amd64.ld
(amd64.ld 是我保存 ld --vebose 输出的文件)期望我会得到与什么时候相同的最终 ELF没有给出链接描述文件参数 (-T)。但是构建失败并出现 /usr/bin/ld: internal error ../../ld/ldlang.c 4986
使用 gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 和 GNU ld (GNU Binutils for Ubuntu) 2.30
任何人都知道如何与默认链接器脚本链接?