伙计们!我刚刚包括了这个 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/