baisheng

baisheng

0个粉丝

7

问答

0

专栏

0

资料

baisheng  发布于  2019-12-16 15:06:50
采纳率 0%
7个问答
2380

Hi3516A -std=c++11 编译报错

 
本帖最后由 baisheng 于 2019-12-16 15:23 编辑

请教一下各位大佬,我用arm-hisiv300-linux-g++编译bctoolbox-0.5.1。
1. 最开始提示找不到execinfo.h,我从系统目录/usr/local/下的execinfo.h直接拷贝到bctoolbox-0.5.1/include/下,错误消失,随后出现下面的错误。
2. Makefile中CXX_FLAGS已经添加-std=c++11,arm-hisiv300-linux-g++ -v --help显示编译器也支持-std=c++11,但编译时还是会出现如下错误:
  CXX      utils/exception.lo
utils/exception.cc: In function ‘void uncaught_handler()’:
utils/exception.cc:29:2: error: ‘exception_ptr’ is not a member of ‘std’
  std::exception_ptr p = current_exception();
  ^
utils/exception.cc:29:21: error: expected ‘;’ before ‘p’
  std::exception_ptr p = current_exception();
                     ^
utils/exception.cc:31:21: error: ‘p’ was not declared in this scope
   rethrow_exception(p);
                     ^
utils/exception.cc:31:22: error: ‘rethrow_exception’ was not declared in this scope
   rethrow_exception(p);
                      ^
Makefile:588: recipe for target 'utils/exception.lo' failed
make[2]: *** [utils/exception.lo] Error 1
我来回答
回答2个
时间排序
认可量排序

baisheng

0个粉丝

7

问答

0

专栏

0

资料

baisheng 2019-12-17 16:58:06
认可0
顶顶顶顶顶顶顶顶顶顶

刘兵

6个粉丝

3

问答

3

专栏

6

资料

刘兵 2022-11-27 08:03:45
认可0

这是因为exception_ptr这个功能在版本低一点的std-c++11库里面不支持。
可在modules/core/include/opencv2/core/detail/exception_ptr.http中:
第7行加入# define CV__EXCEPTION_PTR 0
这样继续编译就不会出错了。

或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区