vs 中明明包含了头文件所在路径,但是却找不到头文件
- 首先,将要添加的压缩包解压,放在任意一个盘里,注意,我们在代码里要添加的头文件路径是
#include <tensorflow/c/c_api.h>
接下来我们要添加在VS中的所有路径都是tensorflow这个的上一级文件夹
比如D:/include
而不是D:/include/tensorflow
路径不正确,会造成头文件添加不成功 -
C/C++这个插件的配置,找到包含路径,本文是
D:/include/**
,把目录复制进去。最后以**结束代表搜索其子文件夹。
这一步其实是配置c_cpp_properties.json这个文件,是配置C/C++这个插件的。这个插件的目的是高亮、语法检查和代码预览等。也就是用来方便用户查看的,并非是真正的编译器,在此的配置也是为了正确显示高亮和语法检查等。完成上述操作后,c_cpp_properties.json文件会自动更新,如下图:(实际上,也可以直接在c_cpp_properties.json文件中添加"D:/eigen3/**",效果一样)
- 然后配置编译器。
编译器用的是minGW(其实就是linux上的gcc移植到windows的版本)。
打开命令面板,选择配置默认生成任务
打开 tasks.json
需要增加以下参数 -I、-L、l
“-I”,
“D:/include” //指定头文件路径
“-L”,
“D:/lib”, //指定库文件路径
“-ltensorflow” // 链接到所使用的TensorFlow库
如图
- 这里,一般就配置成功了。
如果运行后仍然提示错误:如果运行后仍然提示错误:
eigen_main.cpp:2:10: fatal error: Eigen/Dense: No such file or directory
打开Code runner
点击设置->扩展设置
点击在settings.json中编辑
添加路径-I \"D:/include\"
(注意第一个是右斜杠,然后是双引号,路径里面是左斜杠,最后是右斜杠,再接双引号。)这样就解决了。
-I参数是用来指定头文件目录,/usr/include目录一般是不用指定的,gcc知道去那里找,但是如果头文件不在/usr/include里我们就要用-I参数指定了,比如头文件放在/myinclude
目录里,那编译命令行就要加上-I/myinclude
参数了,如果不加你会得到一个"xxxx.h: No such file or directory"
的错误。-I参数可以用相对路径,比如头文件在当前目录,可以用-I.
来指定。
知乎-天阴不下雨的回答文章来源:https://www.toymoban.com/news/detail-607428.html
gcc -l参数和-L参数文章来源地址https://www.toymoban.com/news/detail-607428.html
到了这里,关于【VScode/VS】解决头文件路径问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!