版权声明:本文为博主原创文章,转载请注明出处,谢谢。 https://blog.csdn.net/wfei101/article/details/83212562
方法1:
报错原因:
json_parser_read.hpp:257:264: error: ‘type name’ declared as function returning an array escape
- 因为是在公共服务器上,没有权限修改json_parser_read.hpp,可以通过修改caffe源码来解决这个错误。
在caffe_root/src/caffe/layers/下打开detection_output_layer.cpp和detection_output_layer.cu 注释掉:
write_json(ss,output);
这一行。
在caffe_root/include/caffe/layers/下打开detection_output_layer.hpp注释掉:
#include <boost/property_tree/json_parser.hpp>
重新编译即可。
办法2:
修改json_parser_read.hpp:打开文件夹Document,选中computer,在搜索json_parser_read.hpp,找到该文件的路径之后用如下命令打开
sudo gedit /usr/include/boost/property_tree/detail/json_parser_read.hpp
将257行开始的escape代码段注释掉即可,如下:
/*escape = chset_p(detail::widen<Ch>("\"\\/bfnrt").c_str())
[typename Context::a_escape(self.c)]
| 'u' >> uint_parser<unsigned long, 16, 4, 4>()
[typename Context::a_unicode(self.c)]
;*/