在Visual Studio C ++中使用Shark机器学习库

时间:2016-02-08 14:48:10

标签: c++ visual-studio compiler-errors machine-learning

我想在Visual Studio 2013中使用Shark库。他们在Shark-3.0.0 \ examples中提供了以下示例:

#include <shark/Core/Shark.h>
#include <iostream>

int main(int argc, char ** argv)
{
    shark::Shark::info(std::cout);
}

但是,我收到以下错误:

错误C1083:无法打开包含文件:&#39; shark / Core / shark.h&#39;:没有此类文件或目录。

实际上, Shark-3.0.0 \ include \ shark \ Core 中的头文件名是 Shark.h.in 。但是,如果我将#include <shark/Core/shark.h>更改为#include <shark/Core/shark.h.in>,则会收到以下错误:

错误C1083:无法打开包含文件:&#39; boost / version.hpp&#39;:没有此类文件或目录。

4 个答案:

答案 0 :(得分:0)

Shark是一个作为源包提供的库,它(根据README.txt中的说明)需要在目标机器上进行编译:

  

安装/文档

     

Shark图书馆文档的入口点位于   doc / index.html。有关安装说明,请单击   &#34;入门&#34;在那个页面上。简易版安装指南:   问题&#34; ccmake。&#34;在主目录中选择您的构建选项,   然后发出&#34; make&#34;在主目录中 - 你应该是   完成(假设安装了Boost和CMake)。请参阅文档   有关详细说明。

更详细的安装说明available from the library provider

请注意,Shark似乎依赖于Boost,因此请先安装...

答案 1 :(得分:0)

这是Shark构建系统的一个怪癖。 Shar的build文件夹中有两个“include”文件夹。 shark.h就在其中一个。您需要将两个文件夹添加为包含目录或复制shark.h ..

答案 2 :(得分:0)

我刚刚解决了问题所以我想我可以尝试在这里分享我的解决方案。事实上,阅读文档并没有多大帮助。请注意,我在Windows环境中使用Shark。因此,如果您使用Linux环境,请在您的Linux平台上正确考虑我的解决方案。

确实,您需要做的是在“包含目录”中添加两项内容:

  1. 预先编译的鲨鱼库的路径 (示例:E:\ Users \ frank \ Projects \ SVM \ code_c ++ \ sharkTrial \ shark_compiledFiles \ include)

  2. 你的提升之路 (C:\本地\ boost_1_59_0)

  3. 您可以在IDE中执行类似的操作,例如Eclipse。我希望它有所帮助。

    enter image description here

答案 3 :(得分:-1)

&#34;这是Shark构建系统的一个怪癖。有两个&#34;包括&#34; Shar的构建文件夹中的文件夹。 shark.h就在其中一个。您需要将两个文件夹添加为包含目录或复制shark.h。&#34;为我工作。