我最近修改了Caffe的C++分类示例文件,并尝试重新编译它。然而,我在将简单的g++编译链接到include目录中的.hpp文件时遇到了问题。我知道这是一个基本问题,但我似乎无法解决——有人能帮我解决如何编译这个程序吗?当前的编译命令如下:
g++ -I /home/jack/caffe/include classification.cpp -o classify
但我得到了以下错误:
In file included from /home/jack/caffe/include/caffe/common.hpp:19:0, from /home/jack/caffe/include/caffe/blob.hpp:8, from /home/jack/caffe/include/caffe/caffe.hpp:7, from classification.cpp:1:/home/jack/caffe/include/caffe/util/device_alternate.hpp:34:23: fatal error: cublas_v2.h: No such file or directory #include <cublas_v2.h>
我在没有Nvidia GPU的机器上运行这个程序,当我查看device_alternate.hpp文件时,我意识到它还调用了许多不存在的cuda相关的.hpp文件。
回答:
通常,为了帮助编译器找到头文件,你需要在编译命令中添加-I /path/to/include/folder
选项:
~$ g++ -I /path/to/caffe/include myfile.cpp