dlib编译出错以及解决方法

原创 2016年08月28日 16:20:04

想在C++代码里用机器学习的方法,就找到dlib这个C++的机器学习的library。按照下边官网的方法编译例子出现了关于X11的error。

cd examples
mkdir build
cd build
cmake ..
cmake --build . --config Release
</pre><pre name="code" class="plain"><p class="p1"><span class="s1"><strong>dlib-19.1/dlib/gui_widgets/nativefont.h:313:21: </strong></span><span class="s2"><strong>error: </strong></span><span class="s1"><strong>use of undeclared identifier 'XAllocColor'</strong></span></p><p class="p1"><span class="s1">                    XAllocColor(d, cmap, &xcol);</span></p>


在stackoverflow上很多人问到这个问题,主要有3种方法。

  1. 修改build下边CMakeCache.txt里的X11路径,把anaconda/include改成/usr/X11
  2. 修改dlib里边CMakeLists.txt里下边的这部分
    find_path(xlib_path Xlocale.h
                      PATHS 
                      /Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/include
                      /usr/X11/include
                      /opt/local/include
                      PATH_SUFFIXES X11
                      )
    
    改成
    find_path(xlib_path Xlib.h
               PATHS
               /Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/include
               /usr/wherever/you/found/the/right/one
               PATH_SUFFIXES X11
               )

  3. 彻底删除/anaconda/include/X11/这个文件夹
除了以上三种方法还有人说重装XQarts。在我的机器上只有第三种方法能编译过(虽然有很多warning)。

相关文章推荐

dlib库使用

dlib库使用 最近的工作中用到了dlib这个库,该库是一个机器学习的开源库,使用起来很方便,直接包含头文件即可,并且不依赖于其他库(自带图像编解码库源码)。不过由于是开源的,所以bug多少...

Boost 的编译(交叉)安装 & cmake find_package(Boost)

下载 boost 1.59的源码,执行: bootstrap.sh 编辑文件 project-config.jam,用 “using gcc : arm : arm-linux-gnueabihf-...

Dlib机器学习库编译以及安装

这篇主要是编译和安装,最终目的是编译出dilb.lib,这样就可以将该静态库添加到我们自己的工程,供我们使用。  步骤一:下载Dlib库  下载链接:http://dlib.net/  可以...

Dlib 学习过程中遇到的坑

在使用Dlib的时候遇到两个错误: 1. ‘deque’ is not a member of ‘std’ 2. ‘running_stats’ was not declared in this...

SSE2介绍及其简单用法举例

SSE2介绍及其简单用法举例

coco2dx编译so文件出错解决方法

今天在使用build_native.py打包cocos2dx的android

VC6.0 文件打开 加载 出错解决方法

  • 2012年07月27日 23:25
  • 3.91MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:dlib编译出错以及解决方法
举报原因:
原因补充:

(最多只允许输入30个字)