无法在 ubuntu 14.04 中使用包含的库 -> pokerstove

无法在 ubuntu 14.04 中使用包含的库 -> pokerstove

伙计们!我刚刚包括了这个 pokerstove 图书馆借助好的说明并借助本网站及其用户

我在主目录中运行了所有命令

girts@girts-ThinkPad-E520:~$

安装所有必要的工具后,命令如下

git clone https://github.com/andrewprock/pokerstove.git
mkdir pokerstove/src/build
cd pokerstove/src/build
cmake ..
make

正如你所见,我最终进入了这个目录

girts@girts-ThinkPad-E520:~/pokerstove/src/build$

我确实成功运行了这个库的创建者建议的命令,即

girts@girts-ThinkPad-E520:~/pokerstove/src/build$ bin/ps-eval

之前我还安装了 boost 库并测试它们运行良好,但现在我尝试编译这个简单的 ggg.cpp 文件,其中还包含这些新的 pokerstove 库以下是代码

#include <iostream>
#include <vector>
#include <boost/algorithm/string.hpp>
#include <boost/math/special_functions/binomial.hpp>
#include <boost/foreach.hpp>
#include <boost/format.hpp>
#include <boost/lexical_cast.hpp>
#include <pokerstove/util/combinations.h>
#include <pokerstove/peval/Card.h>

int main(){

    std::cout << "Hello World!" << std::endl;
}

当我尝试使用编译时

girts@girts-ThinkPad-E520:~/pokerstove/src/build$ g++ -o programma ggg.cpp

编译器给了我这个错误

ggg.cpp:8:42: fatal error: pokerstove/util/combinations.h: No such
file or directory  #include <pokerstove/util/combinations.h>
                                          ^ compilation terminated.

我做错了什么吗?(​​当然有,不然也不会出现这个问题)也许我把它安装在了不该安装的地方之类的?

答案1

添加包含文件的路径:

$ g++ -o programma ggg.cpp -I/home/<your_username>/pokerstove/src/lib
$ ./programma 
Hello World!

-I<path_to_pokersove_headers>- 指定搜索头文件的目录

例如:

    $ find -name combinations.h
    ./pokerstove/src/lib/pokerstove/util/combinations.h

因此使用相对路径:./pokerstove/src/lib/
或绝对路径:/home/<your_username>/pokerstove/src/lib/

相关内容