小编Gab*_*los的帖子

英特尔引脚与 C++14

问题

我对 Intel Pin 与 C++14 或其他 C++ 版本的使用有一些疑问。

  • 用较新的版本从旧的 C++ 编译代码很少有任何问题,但由于 Intel Pin 是操纵指令级别的,如果我用 C++11 或 C++14 编译它,是否会出现任何不良副作用?
  • 如果可以使用 C++11 或 C++14 进行编译,我该如何制定规则以仅为我的工具启用更新版本的 C++?
  • 如果可能,如何将 GCC/G++ 默认 C++ 版本设置为最新版本,并且在这样做时我应该记住什么?

情况

我正在构建一个动态调用图 pin 工具。为了便于理解,我正在计算调用堆栈的深度。为了安全起见,我决定用std::mutex. 这让我遇到了std::mutex自 C++11 以来才可用的问题,这不是我机器中的 Intel Pin 默认值。

$ g++ -v
[...]
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2)
Run Code Online (Sandbox Code Playgroud)

编译命令:

$ make obj-intel64/callgraph.so
[...]
error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled …
Run Code Online (Sandbox Code Playgroud)

c++ gcc c++11 intel-pin c++14

5
推荐指数
1
解决办法
2350
查看次数

标签 统计

c++ ×1

c++11 ×1

c++14 ×1

gcc ×1

intel-pin ×1