CLion学习笔记-cmake编译和多main函数编译

这里就不讲怎么配置clion了

项目名字

pcl_kdtree_search

1.新建一个工程名字自己取,我这里用自己学习pcl的,加一个main函数,这个时候Cmake里边就是这样的。

#声明要求的cmake最低版本
cmake_minimum_required(VERSION 3.19)
#声明一个工程
project(pcl_kdtree_search)set(CMAKE_CXX_STANDARD 14)
#添加一个可执行的程序
#语法: add_executable(程序名 源代码文件)
add_executable(pcl_kdtree_search main.cpp)

完整的代码

cmake_minimum_required(VERSION 3.22 FATAL_ERROR)project(pcl_kdtree_search)find_package(PCL 1.14 REQUIRED)include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})add_executable(pcl_kdtree_search1 main.cpp)
#add_executable(pcl_kdtree_search2 main1.cpp)
target_link_libraries(pcl_kdtree_search1 ${PCL_LIBRARIES})
#target_link_libraries(pcl_kdtree_search2 ${PCL_LIBRARIES})

使用

 

点击此处按钮加载 ,或者右键cmake.list点击重新加载

 即可运行代码

 多个main函数如何运行

cmake_minimum_required(VERSION 3.22 FATAL_ERROR)
#声明要求的cmake最低版本project(pcl_kdtree_search)
#声明一个工程
find_package(PCL 1.14 REQUIRED)
#添加一个可执行的程序
#语法: add_executable(程序名 源代码文件)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})add_executable(pcl_kdtree_search1 main.cpp)
add_executable(pcl_kdtree_search2 main2.cpp)
#第一个程序名是不能修改的,就是跟工程名字一样
#添加了一个新的程序名字pcl_kdtree_search2,对应的cpp名字为main2
target_link_libraries(pcl_kdtree_search1 ${PCL_LIBRARIES})
target_link_libraries(pcl_kdtree_search2 ${PCL_LIBRARIES})
#不要漏了还有下面这个也要加一个软连接

 重复上面的步骤取编译一下cmake,然后进入主函数就可以运行了

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/869639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MongoDB 全文检索

MongoDB 全文检索 MongoDB 是一个流行的 NoSQL 数据库,以其灵活的数据模型和强大的查询语言而闻名。在 MongoDB 中,全文检索是一种功能,允许用户对存储在数据库中的文本数据进行复杂的搜索。全文检索对于构建搜索引擎、内容推荐系统和文本分…

【SQL】MySQL 中主要的锁类型

在MySQL中,主要有以下几种锁类型,每种锁都有不同的特点和使用场景: 1. 共享锁 (Shared Lock, S Lock) 共享锁是一种读取锁,也称为S锁。多个事务可以同时持有共享锁,并且不会阻塞其他事务获取共享锁,但会阻…

消息称台积电下周开始试产 2nm 芯片,有望率先用于苹果 iPhone 17

消息称台积电下周开始试产 2nm 芯片,有望率先用于苹果 iPhone 17 💡📱 大家好,我是猫头虎,科技自媒体博主 🐱🐯,带你洞察科技世界的每一个细节!🔥 关于猫头…

sklearn(Python机器学习库)介绍

0 引言 Sklearn (全称 Scikit-Learn)是基于Python 编程语言的免费软件机器学习库。 Scikit-learn主要是用Python编写的,它建立在 NumPy, SciPy, Pandas 和 Matplotlib 之上,里面API 的设计非常好,所有对象的接口简单,很适合新手上路。 Scikit-learn与许多其他Python库很好地…

Linux学习笔记(三)文件权限

一、权限的分类 Linux权限分为r(读取)、w(写入)、x(执行)。我们在终端执行ls -l命令查看文件详细信息显示如下: [root@srv sun]# ls -l 总用量 0 drwxr-xr-x. 2 sun root 6 7月 5 14:05 公共 drwxr-xr-x. 2 sun root 6 7月 5 14:05 模板 drwxr-xr-x. 2 sun root…

netty udp创建服务端+客户端

一.udp创建服务端 /*** udp 服务器 */ Slf4j Component public class UdpServer {/*** 创建服务端*/Asyncpublic void bind(int port) {EventLoopGroup group new NioEventLoopGroup();try {Bootstrap b new Bootstrap();b.group(group).channel(NioDatagramChannel.class).…

vue 导出excel乱码问题

今天做一个导出excel的功能,导出文件显示乱码,分析接口无问题,后修改如下: 1.接口的response类型:类型设置为blob // 导出信息 export const exportInfo (data: any, config { timeout: 6000, responseType: "…

MAT(Eclipse Memory Analyzer) Windows安装

MAT(Eclipse Memory Analyzer) Windows安装 MAT(Eclipse Memory Analyzer)是一个Java的内存分析工具 MAT下载地址 安装完成之后的目录机构 如若出现java版本过低的解决办法 在配置文件MemoryAnalyzer.ini中添加指定Java的版本…

PD协议诱骗芯片,XSP08Q,XSP16应用笔记

XSP08Q是3C数码或小家电产品的Type-C接口控制芯片,它负责和PD充电器通讯,获取充电器的快充电压档位,如5V4A,9V3A,12V2A,15V3A,20V5A等等。 XSP08Q支持PD协议,BC1.2协议,Q…

从产业链视角审视工作

从产业链视角审视工作:定位、价值与成长 作为一名技术博客博主,我经常收到各种关于职业发展、技术成长和学习路径的问题。最近,我看了一份学习报告,其中提到了一种非常有趣且实用的视角——从产业链的角度去审视自己的工作。这种视…

Hash算法和MD5容易受到冲突攻击的原因

Hash算法和MD5容易受到冲突攻击的原因主要在于它们的设计缺陷和安全性问题。‌ 设计缺陷:‌如果哈希算法设计不当,‌可能会产生哈希碰撞,‌甚至导致碰撞攻击。‌哈希函数的目标是将输入数据转换成固定长度的输出,‌但如果在设计上…

Web 自动化测试主流框架都有哪些?

Web移动端自动化测试成为了现代软件开发流程中的重要环节,因此,很多主流框架被开发出来来帮助开发人员提高测试效率。本篇文章将从零到一详细介绍Web移动端自动化测试的主流框架。 一、Web移动端自动化测试框架简介 Web移动端自动化测试框架是一种开发工…

百元平价蓝牙耳机哪款好?平价高性价比蓝牙耳机推荐

随着蓝牙耳机的普及,市面上各种品牌的蓝牙耳机也层出不穷。对于那些预算在百元平价的朋友来说,百元平价蓝牙耳机哪款好?这个问题就显得格外重要了。毕竟,蓝牙耳机作为日常生活中不可或缺的小伙伴,不仅需要音质出众、续…

AD3518 SOP-8封装 单节锂电池保护芯片 可替代XB8608/XB8608A

AD3518 是一款内置 MOSFET 的单节锂电池保护芯片。该芯片具有非常低的功耗和非常低阻抗的内置 MOSFET。该芯片有充电过压,充电过流,放电过压,放电过流,过热,短路,电芯反接等各项保护等功能,确保…

7.深度学习概述

深度学习概述 1. 线性回归1.1 线性回归一般表达式1.2 线性回归内积表达方式:1.3 多个样本时,线性回归的进一步表达:1.4 线性回归方程的解析1.5 线性回归就是求loss函数的最小值 2. 如何求函数最小值2.1 一个例子2.2 求导法——求最小值2.3 求…

OCR的基本概念和开源项目介绍

深度学习和OCR OCR基本概念开源项目多模态大模型——OCR free 在当今多模态大模型横行的时代,已经没有人再去研究OCR了 OCR基本概念 OCR是目标检测类项目,但又不完全是目标检测。它是 行级语义OCR问题最有效解决方案:OCR问题: 第…

使用“nvm use 版本号“命令无效

使用"nvm use 版本号"命令无效 为什么无效?解决 为什么无效? 解决 将这个nodejs文件夹删除,然后在运行nvm use 版本号,则 node生效.

C#面:解释startup class的configure方法有什么作用?

这个⽅法来定义整个应⽤如何响应HTTP请求。它有⼏个⽐较重要的参数,application builder,Hosting environment, logo factory, 在这⾥我们可以配置⼀些中间件⽤来处理路径,验证和session等等。 startup class的configure方法是 A…

JSON Server 详细使用教程

简介 JSON Server 是一个非常实用的工具,可以让你快速搭建一个模拟 REST API。它可以基于一个 JSON 文件快速创建一个全功能的假 REST API,非常适合前端开发时做原型或 mock 数据。本文将详细介绍 JSON Server 的安装和使用方法。 安装 JSON Server 是一个 Node.js 模块,可以…

UNIAPP 使用地图 百度 高德 腾讯地图路线轨迹

这里写自定义目录标题 UNIAPP 使用地图 百度 高德 腾讯地图路线轨迹链接: [插件](https://ext.dcloud.net.cn/plugin?id18892/).路线轨迹首先需要申请开发者中心 的key值必须导入插件复制下面代码 替换KEY值申请key值以后 只需要传开始和结束的经度纬度即可** UNIAPP 使用地图…