cmake中的find_package(xxx REQUIRED)与set(CMAKE_PREFIX_PATH xxx)

这篇具有很好参考价值的文章主要介绍了cmake中的find_package(xxx REQUIRED)与set(CMAKE_PREFIX_PATH xxx)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1 find_package(xxx REQUIRED)

2 set(CMAKE_PREFIX_PATH xxx)


1 find_package(xxx REQUIRED)

find_package(xxx REQUIRED)的作用就是寻找包,比如我们某个工程编译的时候需要用到opencv,那我们的CMakeList.txt中需要有find_package(OpenCV REQUIRED),他的原理简单来说就是去寻找OpenCVConfig.cmake文件,然后在OpenCVConfig.cmake文件中会指定opencv的库路径和头文件路径,从而你编译的时候也就找到了相应的头文件和库文件。

如果我们不加干预,那么find_package(OpenCV REQUIRED)会在默认路径中寻找OpenCVConfig.cmake,那么如果我们系统默认路径中的opencv版本不是我们想要的,我们自己在某个路径下cmake编译了更高版本的opencv,然后我们工程编译的时候想让cmake去寻找我们自己编译的更高版本的opencv的OpenCVConfig.cmake,那怎么办呢,这时候就要用set(CMAKE_PREFIX_PATH xxx)。

2 set(CMAKE_PREFIX_PATH xxx)

这个其实就是让cmake去我们指定的目录下寻找xxxxConfig.cmake,如果是opencv,那么我们把编译自己版本opencv时的install文件夹路径放到set(CMAKE_PREFIX_PATH  /xxx/xxx/install)即可。这样cmake就会去找到我们自己的 ./install/lib/cmake/opencv4/OpenCVConfig.cmake。文章来源地址https://www.toymoban.com/news/detail-603961.html

到了这里,关于cmake中的find_package(xxx REQUIRED)与set(CMAKE_PREFIX_PATH xxx)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CMake Error at CMakeLists.txt: (FIND_PACKAGE)找不到ncnn包的解决方法

    demo指路:https://github.com/EdVince/Stable-Diffusion-NCNN 在 Linux端 使用 cmake 编译文件时, 执行 cmake .. 命令,报错: 拉取 ncnn 的代码库(包括submodule)后没有 build and Install ,所以 cmake 时找不到对应的包,只需要让它找到对应的包即可,分为2步: 生成对应的cmake文件( ncnnConfig.cmake

    2024年02月11日
    浏览(180)
  • CMake Error at CMakeLists.txt:5 (find_package):By not providing “FindOpenCV.cmake“ in CMAKE_MODULE

    CMake Error at CMakeLists.txt:5 (find_package): By not providing \\\"FindOpenCV.cmake\\\" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by \\\"OpenCV\\\", but CMake did not find one.  CMake Error at CMakeLists.txt:5 (find_package): By not providing \\\"FindOpenCV.cmake\\\" in CMAKE_MODULE_PATH this project has asked CMake to

    2024年04月27日
    浏览(42)
  • CMake语法-find_package-查找库-pkg_check_modules-外部库信息-find_path-查找路径-find_library-查找库

    find_package 是 CMake 中的一个命令,用于在构建系统中查找和引入第三方库。当你在项目中使用了某个外部库(如 Boost、Eigen、OpenCV 等)时,可以利用 find_package 命令来查找并配置这些库的路径和其他相关设置。 基本语法如下: package_name : 要查找的包的名称。 version : (可选)

    2024年04月09日
    浏览(67)
  • 解决执行find_package(PCL, ...时遇到CMakeFindDependencyMacro.cmake里find_dependency(Qt5WebKit 5.212.0 EXACT报错

    写的CMakeLists.txt里有这么一句: find_package(PCL 1.8 REQUIRED COMPONENTS common io visualization) 在执行cmake 命令时报下面的错: CMake Error at /usr/share/cmake-3.10/Modules/CMakeFindDependencyMacro.cmake:48 (find_package):   Found package configuration file:     /root/anaconda3/lib/cmake/Qt5WebKit/Qt5WebKitConfig.cmake   but it set Qt5

    2024年01月24日
    浏览(41)
  • 20230822 Windows上使用find_package引入OpenCV报错

    打开Cmake项目时,find_package 报错: 大概率原项目是在 Linux 上开发的,Linux 上安装的 OpenCV 默认添加到了系统环境里,所以可以直接使用,但是 Windows 上的系统环境变量里没有OpenCV导致的 有两种解决方案 1. 将 OpenCV 添加到系统环境变量中 将 OpenCV 添加到系统环境变量里,这样

    2024年02月11日
    浏览(39)
  • Flutter获取依赖报错Got TLS error trying to find package xxx

    获取依赖包失败 之前flutter自动获取依赖包都是正常的,今天突然卡住了,一致获取不到,尝试替换镜像也照样没有用,而且所有镜像均能够通过浏览器在国内访问。最终通过https://github.com/dart-lang/pub/issues/1882#issuecomment-415588527 这个issue得到顺利解决,故留下笔记。 以清华镜像

    2024年02月09日
    浏览(47)
  • Flutter Got TLS error trying to find package xxx at https://pub.dev.

    在学习Flutter的时候,遇到需要安装flutter_inappwebview依赖包,发现无法安装,控制台提示 Got TLS error trying to find package flutter_inappwebview at https://pub.dev. 经过网上查找资料,发现: 如果在中国安装flutter,配置国内镜像是很好的解决办法。 到此,解决方法找到。 配置本地环境方法

    2024年02月14日
    浏览(44)
  • Mysql中的find_in_set() 函数用法详解及使用场景

    一、find_in_set() 函数详解 示例: 相信大家看完以上示例就知道这个函数的大概作用了,以下是MySQL手册中官方说明 概括一下就是(前一个字符串是A,后一个字符串是B): 如果B字符串包含A字符串:则返回大于0的值,这个值就是A字符串在B字符串的所在位置; 如果B字符串不

    2024年02月13日
    浏览(43)
  • halide package cmake的设置方式

    1 先找一个例程。里面用到halide。 这时会提示找不到package。 按照那个提示做就行。 2 把提前下载好的halide放到一个位置 3 然后设置一下那个Halide_DIR就可以了 这种方法有个问题 就是不能找halide依赖的库,ZLIB,PNG,JPEG。 解决方法是 直接在那个cmake_prefix_path 里面多加上这一句

    2024年02月21日
    浏览(32)
  • 解决xxx packages are looking for funding

    一般都是开发者捐赠支持的提示,打开一个github的链接之后,会显示需要打赏捐赠的信息,此时如果不想捐赠或者跳过这个提示的话,直接在后面加--no-fund即可,具体命令如下: npm install --no-fund 但是本着打赏自愿,支持依赖提供者,还是多少可以支持一下,这样才能给开发

    2024年02月12日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包