上下文:
我有一个Findxxxx.cmake
脚本运行了一段时间,就像一个咒语。
我想更改存储依赖项的目录,因此我将其复制到已安装的网络共享中(即在另一个“字母”下)。我相应地更新了PATH,但是运气不好,我的依赖关系消失了。
我还原了PATH以指向原始依赖项位置(从未删除过),并且它再次开始查找库。
由于我只是将依赖关系目录复制到另一个位置,因此我感到很不好,因为CMake在新位置上找不到该库是因为它在某种程度上位于具有不同“字母”的其他驱动器上...
我看了find_library文档,但没有发现关于驱动器号的一些限制。
你们对此有何看法?
编辑:这是我的Findxxxx.cmake。是要搜索libsodium
。
find_path (
LIBSODIUM_INCLUDE_DIRS
NAMES sodium.h
HINTS ${PC_LIBSODIUM_INCLUDE_HINTS}
)
find_library (
LIBSODIUM_LIBRARIES
NAMES sodium libsodium
HINTS ${PC_LIBSODIUM_LIBRARY_HINTS}
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(
LIBSODIUM
REQUIRED_VARS LIBSODIUM_LIBRARIES LIBSODIUM_INCLUDE_DIRS
)
mark_as_advanced(
LIBSODIUM_FOUND
LIBSODIUM_LIBRARIES LIBSODIUM_INCLUDE_DIRS
)
编辑2:只是通过PowerShell而不是旧的CMD进行了尝试,这似乎在两种情况下都有效。