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错误集锦的更多相关文章

  1. windows下编译caffe出现错误 C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe?

    解决方案来自http://blog.csdn.net/u012556077/article/details/50353818

  2. 在Hadoop 2.3上运行C++程序各种疑难杂症(Hadoop Pipes选择、错误集锦、Hadoop2.3编译等)

    首记 感觉Hadoop是一个坑,打着大数据最佳解决方案的旗帜到处坑害良民.记得以前看过一篇文章,说1TB以下的数据就不要用Hadoop了,体现不 出太大的优势,有时候反而会成为累赘.因此Hadoop的 ...

  3. ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录

    已有条件: ubuntu14.04+cuda7.5+anaconda2(即python2.7)+matlabR2014a 上述已经装好了,开始搭建caffe环境. 1. 装cudnn5.1.3,参照: ...

  4. ubuntu下编译caffe

    Ubuntu下编译caffe 纯粹是个人编译的记录.不用CUDA(笔记本是amd卡,万恶的nvidia):不手动编译依赖包(apt-get是用来干啥的?用来直接装二进制包,以及自动解决依赖项的) ca ...

  5. (原)编译caffe时提示未定义的引用(undefined reference to)

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5864715.html 参考网址: https://github.com/BVLC/caffe/issu ...

  6. (原)Ubuntu16中编译caffe

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5797526.html 参考网址: http://caffe.berkeleyvision.org/in ...

  7. ubuntu下 编译Caffe的Matlab接口

    一般情况下不愿意使用Caffe的Matlab接口,总觉得Linux版的Matlab很难配置,但是现在搞目标检测,得到的源码是使用的Caffe的Matlab接口,只能硬着头皮上了. (1)修改caffe ...

  8. (转)Hadoop之常见错误集锦

     Hadoop之常见错误集锦            下文中没有特殊说明,环境都是CentOS下Hadoop 2.2.0.1.伪分布模式下执行start-dfs.sh脚本启动HDFS时出现如下错误:   ...

  9. Caffe学习系列(一)Ubuntu16.04下搭建编译Caffe环境,并运行MNIST示例(仅CPU)

    前言: 正文: 1.安装必要依赖包: sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev l ...

  10. windows下编译caffe报错:error MSB4062: 未能从程序集 E:\NugetPackages\OpenCV.2.4.10\......的解决办法

    参考博客:http://blog.csdn.net/u013277656/article/details/75040459 在windows上编译caffe时,用vs打开后会自动加载还原NugetPa ...

随机推荐

  1. C# WPF 窗体传递消息

    对于存在窗体的WPF程序(或者说,起码在任务栏上有个图标,即ShowInTaskbar = true),互相传递消息是很容易的. 步骤: 1,寻找窗体的句柄 2,运用windows API: Send ...

  2. 洛谷 P1186 玛丽卡

    P1186 玛丽卡 题目描述 麦克找了个新女朋友,玛丽卡对他非常恼火并伺机报复. 因为她和他们不住在同一个城市,因此她开始准备她的长途旅行. 在这个国家中每两个城市之间最多只有一条路相通,并且我们知道 ...

  3. [转]十五天精通WCF——第八天 对“绑定”的最后一点理解

    转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ...

  4. OpenCV摄像头读取

    在Mac下面使用默认的OpenCV读取摄像头程序会报错 int main(int, char**) { VideoCapture cap(0); // open the default camera ...

  5. mybatis原理流程

    无论是用过的hibernate,mybatis,你都可以法相他们有一个共同点: 从配置文件(通常是XML配置文件中)得到 sessionfactory. 由sessionfactory  产生 ses ...

  6. h5 播放器 -2

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  7. 【JavaSE】day03_Date、SimpleDateFormat、Calendar、Collection

    [JavaSE]day03_Date.SimpleDateFormat.Calendar.Collection 1.Date及其经常使用API 1)JAVA 中的时间 Java中的时间使用标准类库的D ...

  8. 使用html5 FileReader获取图片,并异步上传到server(不使用iframe)

    使用html5 FileReader获取图片,并异步上传到server(不使用iframe) 原理: 1.使用FileReader 读取图片的base64编码 2.使用ajax.把图片的base64编 ...

  9. Android updater-scripts(Edify Script)各函数详细说明【转】

    本文转载自:http://blog.csdn.net/kwuwei/article/details/40616909 这是Android系统来运行updater-scripts的Edify语言的基本介 ...

  10. ConcurrentDictionary中的 TryRemove

    class A { internal int value; } ConcurrentDictionary<int, A> dic = new ConcurrentDictionary< ...