编译darknet-master不返回Stb_INCLUDE_DIR错误

问题描述

我尝试编译darknet-master并收到此错误

CMake Error at /usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
  Could NOT find Stb (missing: Stb_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindStb.cmake:29 (find_package_handle_standard_args)
  CMakeLists.txt:109 (find_package)


-- Configuring incomplete,errors occurred!

该机顶盒做什么用?以及如何解决这个问题? Stb_INCLUDE_DIR?

解决方法

如果您在编译过程中使用 CMakeList.txt 而不是 Makefile,则可能会出现此问题。如果您是交叉编译并且必须使用 CMake,这是合理的,但在所有其他情况下,您将使用 unix 中的 Makefile 或 Windows 中准备的 sln 文件。为了解决这个问题,我准备了一个解决方法,请在 CMakeList.txt 中注释以下行

find_package(Stb REQUIRED)

然后添加以下行

set(Stb_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/stb/include)

请注意,stb 文件是源代码的一部分。