带有 Visual Studio 的第三方库
Posted
技术标签:
【中文标题】带有 Visual Studio 的第三方库【英文标题】:Third party library with Visual Studio 【发布时间】:2018-06-05 17:25:16 【问题描述】:我想在 Visual Studio 中使用 dlibc [http://dlib.net/]。 我根据指南为 Visual Studio 构建 dlibc:[https://github.com/davisking/dlib]
C:\libraries\dlib-19.8\build>cmake -G "Visual Studio 14 2015 Win64" -T host=x64 ..
-- Enabling SSE2 instructions
-- Searching for BLAS and LAPACK
-- Searching for BLAS and LAPACK
-- Found Intel MKL BLAS/LAPACK library
-- C++11 activated.
-- Configuring done
-- Generating done
-- Build files have been written to: C:/libraries/dlib-19.8/build
项目构建成功,生成如下一组文件。
<DIR> .
<DIR> ..
24,010 ALL_BUILD.vcxproj
282 ALL_BUILD.vcxproj.filters
<DIR> CMakeFiles
5,358 cmake_install.cmake
<DIR> config
1,254 config.h
226 dlib-1.pc
4,121 dlib.sln
55,910 dlib.vcxproj
18,285 dlib.vcxproj.filters
11,676 INSTALL.vcxproj
519 INSTALL.vcxproj.filters
<DIR> neon_test_build
129 revision.h
现在我想知道如何使用它,因为我看不到任何包含目录或任何 dll 或 lib 文件。如果我在 C++ 控制台项目中添加任何头文件,例如
#include <dlib/bayes_utils.h>
#include <dlib/graph_utils.h>
它带有红色摆动,表示未找到文件。
我是 Visual Studio IDE 的新手。
更新 1:仍然失败
我用 VS 打开了 dlib.sln 文件并构建了安装配置。它得到了这样的消息:
-- Install configuration: "Debug"
-- Installing: C:/Program Files/Project/lib/dlib.lib
然后我添加了 C:/Program Files/Project/include/dlib/;在项目设置的附加包含目录中,并尝试运行示例代码http://dlib.net/bayes_net_ex.cpp.html,但仍然存在红色摆动。
【问题讨论】:
不要发布控制台窗口的屏幕截图。发布其内容。发布适当的dir
命令的输出而不是发布资源管理器屏幕截图也很好。毕竟,这不是 Facebook。
完成了,以后我会处理的。
谢谢!我们的目标是通过 Google 等搜索引擎为将来遇到同样问题的人提高可查找性。
使用 Visual Studio 打开 *.sln 文件时会发生什么?那么它不是为您提供构建库的功能吗?
用最新的尝试更新了答案。
【参考方案1】:
#include <dlib/bayes_utils.h> #include <dlib/graph_utils.h>
[...]
然后我添加了 C:/Program Files/Project/include/dlib/;额外地 包含目录
像#include <dlib/...>
这样的行意味着编译器在所有包含目录中搜索名为dlib
的子目录。除非您的机器上有一个目录C:/Program Files/Project/include/dlib/dlib
,我对此表示怀疑,否则这将失败。
您应该改为添加C:\Program Files\Project\include
。也可以考虑通过“Property Manager / Release | Win32 / Microsoft.Cpp.Win32.user”添加include目录和库目录。
顺便说一句,这是 CMake 选择的一个非常不寻常的目标路径。这可能与新的 CMake 版本有关,或者您对生成的文件做了其他事情,但您没有告诉我们。
【讨论】:
使用该版本的 Visual Studio 进行了大量测试,并且 dlib 的 cmake 文件中没有设置目标安装文件夹的内容。它要么是新 cmake 中的新默认值,要么是 OP 设置了一些他没有告诉我们的东西。 @DavisKing:很高兴知道。我会改编那段!【参考方案2】:您可以在 Visual Studio 中配置包含文件的编译器文件路径位置。在项目的属性中,选择 C/C++ General 菜单并将文件夹位置添加到:Additional Include Directories。
【讨论】:
以上是关于带有 Visual Studio 的第三方库的主要内容,如果未能解决你的问题,请参考以下文章
Intellisense 与 Visual Studio Code 中的第三方 JavaScript 库
安装python 第三方库遇到的安装问题 microsoft visual studio c++ 10.0 is required,Could not find function xmlCheckVe