我在VC ++ VS 2015解决方案中将静态库与另一个静态库相结合时遇到了一些问题。我能够让图书馆自己构建并通过图书管理员就好了,但是当我尝试添加包含路径时我无法使用#include <MyFile.hpp>
,它只是失败了一个&#39;文件找不到&#39;错误。
我已确认包含路径有效,并尝试使用以下不同格式:
$(SolutionDir)lib\include
..\lib\include
\\?\$(SolutionDir)lib\include (not sure if this still helps with anything)
我还尝试在项目的Include Directories
属性中添加这些包含VC++ Directories
值的路径,以及项目内的Additional Include Directories
值&# 39; s C/C++
属性。此外,该库已添加为项目参考。
我感兴趣的是我以完全相同的方式包含DLL,并且我没有这个特定库的问题。两者之间的唯一区别是一个是DLL而另一个是LIB,显然两者之间有不同的路径(尽管它们都在同一个$(SolutionDir)lib
基本路径中)。
我通过将include指令更改为#include "../../lib/include/MyFile.hpp"
来解决这个问题,这使得构建工作完全正常,没有其他更改。尽管如此,我仍然非常难以理解为什么这个LIB的行为与包含目录的DLL项目的行为方式不同。