CmakeLists实践(4)
来源:互联网 发布:淘宝兼职是真的假的 编辑:程序博客网 时间:2024/05/05 08:34
多个文件多个目录,调用其他库
文件结构如下:
—bin
—lib
—include
——Multiply.h
—src
——Multiply. cpp
——main.cpp
—CMakeLists.txt
—include
——Multiply.h的文件代码如下:
#ifndef _Multiply_H_#define _Multiply_H_class Multiply{public: Multiply(); ~Multiply(); int multiply(int a, int b);};#endif
—src
——Multiply.cpp的文件代码如下:
#include"Multiply.h"Multiply::Multiply(){ ;}Multiply::~Multiply(){ ;}int Multiply::multiply(int a, int b){ return a*b;}
—src
——main.cpp的文件代码如下:
#include<iostream>#include<opencv2/opencv.hpp>#include"Multiply.h"using namespace std;int main(){ int a,b; cin>>a>>b; Multiply mul; cout<<mul.multiply(a,b)<<endl; cout<<"Start OpenCV"<<endl; cv::Mat img1; img1=cv::imread("./src/main_page.png"); if(img1.data==NULL) { cout<<"Error"<<endl; return -1; } cv::namedWindow("source_image", CV_WINDOW_NORMAL); cv::imshow("source_image", img1); cv::waitKey(0); return 0;}
—src
——CMakeLists.txt的文件代码编写如下:
# 增加opencv的依赖find_package(OpenCV REQUIRED)# 添加opencv的包含目录include_directories(${OpenCV_INCLUDE_DIRS})# 查找当前目录下的所有源文件,并将名称保存到DIR_SRCS变量aux_source_directory(. DIR_SRCS)# 指定生成的目标add_executable(Demo ${DIR_SRCS})# 链接OpenCV库target_link_libraries(Demo ${OpenCV_LIBS})
—CMakeLists.txt的代码编写如下:
# cmake最低版本要求cmake_minimum_required (VERSION 2.8)# 项目信息project(Demo4)# 设定可执行二进制文件的目录set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)# 设定编译得到的库文件目录set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)# 将库文件目录作为连接的目录link_directories(${PROJECT_SOURCE_DIR}/lib)# 设定头文件目录include_directories(${PROJECT_SOURCE_DIR}/include)# 添加src目录作为继续构建add_subdirectory(${PROJECT_SOURCE_DIR}/src)
0 0
- CmakeLists实践(4)
- CmakeLists实践(1)
- CmakeLists实践(2)
- CmakeLists实践(3)
- cmakelists
- CMakeLists
- CMakeLIsts
- CMakeLists.txt文件写法(4):使用变量
- ROS学习(六):CMakeLists.txt 文件
- 《Cmake 实践》【初试 cmake – cmake 的 helloworld】CMakeLists.txt错误
- ROS CMakeLists.txt的编写学习(一)
- ROS之catkin介绍(CMakeLists.txt 、package.xml)
- Android 使用CMake编译NDK(一)CMakeLists.txt
- 阅读 CMakeLists
- CMakelists.txt
- CMakeLists 文件
- CMakeLists.txt
- CMakeLists.txt
- 为什么RTC晶振频率是32768Hz
- JavaScript深入浅出————对象(四)
- c++virtual
- 跟天齐老师学Spark(5)--使用IDEA开发Spark程序
- Adroid美丽心理说项目的知识点运用
- CmakeLists实践(4)
- 实践出真知
- 485. Max Consecutive Ones
- SS4.1_Hibernate_ObjectStatus Hibernate对象三种状态以及openSession/getCurrentSession
- C语言—经典面试题
- 创业日记-2017年2月6号
- CUDA一维纹理内存
- java01基础简介
- QT之 QNetworkAccessManager学习笔记