当前位置: 首页 > news >正文

建设网站及后期维护费用是多少中国优化网

建设网站及后期维护费用是多少,中国优化网,政府网站建设评分标准,12380网站建设情况总结1、find_package命令基本介绍 在实际开发过程中,经常不可避免的会使用到第三方开源库,这些开源库可能是通过apt-get install 命令自动安装到系统目录,也可能是由我们自己下载库的源码然后通过编译安装到指定目录的。 不管哪种方式安装的库文…

1、find_package命令基本介绍

在实际开发过程中,经常不可避免的会使用到第三方开源库,这些开源库可能是通过apt-get install 命令自动安装到系统目录,也可能是由我们自己下载库的源码然后通过编译安装到指定目录的。

不管哪种方式安装的库文件,如果我们需要在自己的项目中使用这些库,首先面临的第一个问题就是如何找到这些库。也就是说,根据我们的需要找到指定本版的库头文件包含路径、链接库路径等,从而能够满足我们开发项目的编译链接需要。

CMake提供了find_package()命令用来查找以来包,理想情况下,一句find_package()命令就能把一整个依赖包的的头文件包含路径、库路径、库名字、版本号等情况都获取到,后续只管用就好了。但实际使用过程肯呢个会出现这样那样的问题,因此需要我们对find_package这个强大的命令有个大概的理解。

2、一个使用find_package命令的例子

例子说明:用OpenCV库举例子,示范如何通过find_package命令找到OpenCV库并配置,从而能够在我们自己的项目中调用OpenCV库,实现特定的功能。

下面的代码主要实现了利用OpenCV载入一张图片并进行显示。

opencv_test.cpp

#include "opencv2/core.hpp"
#include "opencv2/highgui.hpp"#include <iostream>using namespace std;
using namespace cv;int main(){Mat image;image = imread("../flower.jpg");if(!image.data){cout <<"No image data\n";return -1;}namedWindow("Display Image", WINDOW_AUTOSIZE);imshow("Display Image", image);waitKey(0);return 0;
}

CMakeLists.txt:

cmake_minimum_required(VERSION 3.5)project(opencv_example LANGUAGES CXX)# Enable C++11
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)# 搜索OpenCV的头文件路径、库文件路径等信息
# REQUIRED 表示一定要找到包,否则立即停掉整个CMake
find_package(OpenCV  REQUIRED) # 打印
message(STATUS "    config: ${OpenCV_DIR}")
message(STATUS "    version: ${OpenCV_VERSION}")
message(STATUS "    include: ${OpenCV_INCLUDE_DIRS}")
message(STATUS "    libraries: ${OpenCV_LIBS}")# 可以不用指定关于Opencv的头文件、库的搜索路径
#include_directories(${OpenCV_INCLUDE_DIRS})
#link_directories(${OpenCV_DIR})# 生成可执行二进制文件
add_executable(opencv_example main.cpp)# Link your application with Opencv libraries
target_link_libraries(opencv_example PRIVATE ${OpenCV_LIBS})

2.1 编译运行

在源码路径打开终端,执行

mkdir build
cd bild
cmake ..
make 

在源码路径下放置一张图片并命名为flower.jpg,运行:

./opencv_example

2.2 编译输出与分析

执行cmak ..命令时输出为:

-- The CXX compiler identification is GNU 11.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenCV: /usr/local (found version "4.5.0") 
--     config(OpenCV_DIR): /usr/local/lib/cmake/opencv4
--     version: 4.5.0
--     include: /usr/local/include/opencv4
--     libraries: opencv_calib3d;opencv_core;opencv_dnn;opencv_features2d;opencv_flann;opencv_gapi;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_stitching;opencv_video;opencv_videoio
-- Configuring done
-- Generating done
-- Build files have been written to: /home/lrj/work/opencv_example/build

3、注意

CMake本身不提供任何搜索库的便捷方法,所有搜索库并给变量复制的操作必须由CMake代码完成,也就是OpenCV_DIR目录下的<PackageName>Config.cmake或Find<PackageName>.cmake的配置文件。只不过库的作者通常会提供这两个文件,以方便使用者调用。

如果这个以来保是我们自己开发的,应该如何配置这个包生成这些配置文件,从而能够被其他项目利用find_package命令来配置我们自定义的包呢?

这就需要学习如何使用Cmake封装自己软件包。(原博主暂时未更新此部分)

另外find_package命令有两种工作模式,这两种工作模式的不同决定了其搜包路径的不同,有兴趣的可以看看下面这个链接,初学者暂时学到这里,有需要再补充学习:“轻松搞定CMake”系列之find_package用法详解_zhanghm1995的博客-CSDN博客_find_package

其实还有好多东西可以学,比如target_link_libraries这个指令可以详细了解下等等。但是作为初学者,不要贪多,一定要明确自己现在学的部分是服务哪个分支,而不是一网下去什么鱼都想捞上来。

参考:

“轻松搞定CMake”系列之find_package用法详解_zhanghm1995的博客-CSDN博客

http://www.ritt.cn/news/27361.html

相关文章:

  • 马云将来淘汰的十个行业网站建设免费制作网站的软件
  • 漳浦县网站建设淘宝seo排名优化
  • 网站开发总出现出现404优化精灵
  • 山东网站建设哪家好长春网站建设策划方案
  • 网站设置flash插件推广平台 赚佣金
  • 网站与微信seo网络推广到底是做什么的
  • 企业网站类型谷歌搜索排名规则
  • 做网站的市场seo网络优化公司
  • 做app护肤网站最新国际新闻大事件
  • 亚马逊 怎么做国外网站如何推广引流
  • 网站广告尺寸南昌seo排名
  • 自己在线制作logo免费图片seo新闻
  • 网站后台管理水印怎么做seo查询系统
  • 黑龙江做网站的cba目前排行
  • 做品牌特价的网站搜索引擎优化的流程是什么
  • 天猫出售2021百度新算法优化
  • 爱站网做网站吗企业seo如何优化
  • 玉环做网站有哪些站长域名查询
  • 创建网站需要什么大搜推广
  • 南京公司网站开发优化什么建立生育支持政策体系
  • 企业网站如何维护seo的含义
  • 兰州企业 网站建设seo研究
  • dz地方门户网站制作北京外包seo公司
  • 中国建设银行网站会员注册seo技术经理
  • 网站页面安全监测建设方案全国疫情排行榜最新情况列表
  • 政府网站建设 论文小红书信息流广告
  • 专业做网站排名多少钱站长素材免费下载
  • 做网站实时数据用接口专业竞价托管
  • 海口什么网站建设济南网站建设制作
  • 最牛的科技网站建设阿里云盘资源搜索引擎