编译Caffe-Win错误集锦
Caffe在Windows下编译还是遇到不少麻烦的...
1.visual studio 2013 error C2371: 'int8_t'
: redefinition;
引入的unistd.h文件里面重定义了int8_t ,用记事本 打开文件注销之。
2. error C3861: 'getpid': identifier not found C:\Tools\caffe-master\src\caffe\common.cpp 26
解决:在common.cpp 里面添加 #include <process.h>
修改:
pid = getpid(); ——>pid = _getpid();
3. error C3861: 'usleep': identifier not found C:\Tools\caffe-master\src\caffe\test\test_benchmark.cpp 65
参考:ffmpeg编译总结
7.出现 'usleep': identifier not found
这里因为VC中没有usleep,usleep是微妙级别的,所以需要把代码改为
usleep(is->audio_st && is->show_audio ? rdftspeed*1000 : 5000);
—> Sleep (is->audio_st && is->show_audio ? rdftspeed*1 : 5);
usleep(300 * 1000); —> Sleep(300);
添加:#include <windows.h>
4. error C3861: 'snprintf': identifier not found C:\Tools\caffe-master\src\caffe\solver.cpp 331
参考:http://blog.163.com/wanghuajie@126/blog/static/452312862009111114434838/
在solver.cpp里面添加 #include <stdio.h>
snprintf 修改为 _snprintf
5. error C3861: '__builtin_popcount': identifier not found C:\Tools\caffe-master\src\caffe\util\math_functions.cpp 346
参考:http://blog.csdn.net/rappy/article/details/1788969
__builtin_popcount 这是一个GCC的函数:计算一个 32 位无符号整数有多少个位为1
解决:自己写一个函数__builtin_popcount
template <typename Dtype>
unsigned int __builtin_popcount(Dtype u)
{
u = (u & 0x55555555) + ((u >> 1) & 0x55555555);
u = (u & 0x33333333) + ((u >> 2) & 0x33333333);
u = (u & 0x0F0F0F0F) + ((u >> 4) & 0x0F0F0F0F);
u = (u & 0x00FF00FF) + ((u >> 8) & 0x00FF00FF);
u = (u & 0x0000FFFF) + ((u >> 16) & 0x0000FFFF);
return u;
}//wishchin!!!
6.error : identifier "::caffe::kBNLL_THRESHOLD" is undefined in device code C:\Tools\caffe-master\src\caffe\layers\bnll_layer.cu 36
参考:
解决:在bnll_layer.cu 里修改
Dtype expval = exp(min(in_data[index], Dtype(kBNLL_THRESHOLD)));
——>Dtype expval = exp(min(in_data[index], Dtype(50)));
7. error C2660: 'mkdir' : function does not take 2 arguments C:\Tools\caffe-master\src\caffe\test\test_data_layer.cpp 71
参考:
解决:
CHECK_EQ(mkdir(filename_->c_str(), 0744), 0) << "mkdir " << filename_<< "failed";
里面的第二个参数去掉。
8.error C2784: '_Ty std::max(std::initializer_list<_Elem>,_Pr)' : could not de
解决:调用函数处 把std::max 用括号 括起来 (std::max)(std::initializer_list<
9.error C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS.
参考:http://www.zhihu.com/question/26242158
解决:应该这样添加 -D去掉 属性-> c\c++ -> 预处理器 -> 预处理器定义 里添加 _SCL_SECURE_NO_WARNINGS 编译成功 ,
XXX:不断出现的
error C1075: end of file found before the left parenthesis '(' at ' test_infogain_loss_layer.cpp 71
也没有找到哪里错了。应该是Define语句出现问题, 貌似可以不用管它.............
编译Caffe-Win错误集锦的更多相关文章
- windows下编译caffe出现错误 C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe?
解决方案来自http://blog.csdn.net/u012556077/article/details/50353818
- 在Hadoop 2.3上运行C++程序各种疑难杂症(Hadoop Pipes选择、错误集锦、Hadoop2.3编译等)
首记 感觉Hadoop是一个坑,打着大数据最佳解决方案的旗帜到处坑害良民.记得以前看过一篇文章,说1TB以下的数据就不要用Hadoop了,体现不 出太大的优势,有时候反而会成为累赘.因此Hadoop的 ...
- ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录
已有条件: ubuntu14.04+cuda7.5+anaconda2(即python2.7)+matlabR2014a 上述已经装好了,开始搭建caffe环境. 1. 装cudnn5.1.3,参照: ...
- ubuntu下编译caffe
Ubuntu下编译caffe 纯粹是个人编译的记录.不用CUDA(笔记本是amd卡,万恶的nvidia):不手动编译依赖包(apt-get是用来干啥的?用来直接装二进制包,以及自动解决依赖项的) ca ...
- (原)编译caffe时提示未定义的引用(undefined reference to)
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5864715.html 参考网址: https://github.com/BVLC/caffe/issu ...
- (原)Ubuntu16中编译caffe
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5797526.html 参考网址: http://caffe.berkeleyvision.org/in ...
- ubuntu下 编译Caffe的Matlab接口
一般情况下不愿意使用Caffe的Matlab接口,总觉得Linux版的Matlab很难配置,但是现在搞目标检测,得到的源码是使用的Caffe的Matlab接口,只能硬着头皮上了. (1)修改caffe ...
- (转)Hadoop之常见错误集锦
Hadoop之常见错误集锦 下文中没有特殊说明,环境都是CentOS下Hadoop 2.2.0.1.伪分布模式下执行start-dfs.sh脚本启动HDFS时出现如下错误: ...
- Caffe学习系列(一)Ubuntu16.04下搭建编译Caffe环境,并运行MNIST示例(仅CPU)
前言: 正文: 1.安装必要依赖包: sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev l ...
- windows下编译caffe报错:error MSB4062: 未能从程序集 E:\NugetPackages\OpenCV.2.4.10\......的解决办法
参考博客:http://blog.csdn.net/u013277656/article/details/75040459 在windows上编译caffe时,用vs打开后会自动加载还原NugetPa ...
随机推荐
- PAT 1047. Student List for Course
Zhejiang University has 40000 students and provides 2500 courses. Now given the registered course li ...
- hdu2007 平方和与立方和【C++】
平方和与立方和 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- 【[Offer收割]编程练习赛13 B】最大子矩阵(别人的思路)
[题目链接]:http://hihocoder.com/problemset/problem/1502 [题意] [题解] 枚举矩形的最上面的行数和最下面的行数(i,j且i<=j); 然后一个变 ...
- bupt summer training for 16 #6 ——图论
https://vjudge.net/contest/174020 A.100条双向边,每个点最少连2个边 所以最多100个点,点的标号需要离散化 然后要求恰好经过n条路径 快速幂,乘法过程就是flo ...
- [luoguP2342] 叠积木(并查集)
传送门 up[i] 表示一个木块上面有多少个 all[i] 表示整个连通块内有多少个 那么 一个木块下面的木块个数为 all[root[i]] - up[i] - 1 注意:up[i] 可以在 fin ...
- Linux imooc learning
https://www.imooc.com/video/3529 Windows Vs Linux Linux: (other linux overall https://onedrive.liv ...
- 【ACM】hdu_2007_平方和与立方和_201307261533
平方和与立方和Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- cocos2d-x andriod, Box2D.h: No such file or directory
原文链接:r=47980">http://www.cocos2d-x.org/forums/6/topics/47503? r=47980 You need to include li ...
- css3中 弹性盒模型布局之box-flex
box-flex:也就是让子容器针对父容器的宽高属性依照一定的规则来划分 Eg: html代码: <div class="wrap"> <div class=&q ...
- Spring为了简化java开发採用的四种策略
以下是<Spring in action>中的总结性语言,记录下来,作为研究源码的主要线索. 1.採用轻量级的pojo.最小侵入式编程. 2.依赖注入(DI)和面向接口编程实现松耦合. 3 ...