首页 > 系统相关 >Windows下cmake入门教程-利用cmake创建Visual Studio工程

Windows下cmake入门教程-利用cmake创建Visual Studio工程

时间:2024-07-25 10:27:32浏览次数:10  
标签:cmake 工程 .. Windows 入门教程 Visual 源码 Studio

希望我们不仅把编程当成一份工作,更要将其当成一份热爱!!!

                                                                                                                                  -----潜意识中有个想成为一名厉害的程序员的梦

前言

在使用github的第三方库时,经常会看到cmake build,然后就去学习了一下。发现这玩意挺复杂,水很深。以下仅介绍简单的使用,以便于我们有思路根据github的源码来构建工程、生成依赖库/可执行程序。

cmake是干什么的?

cmake是用来构建工程的。

  • 正常我们创建工程是用visual studio来创建的,像图1,创建的结果如图2。
图1
图2
  • 但是如果根据github仓库中的源码(图3)来构建工程(因为你要利用源码构建工程后,才能生成.lib/.exe来使用)该怎么做呢?此时就可以利用camke 根据红色框的文件来构建我们的工程。
图3

cmake的使用步骤

  • 首先我这里有个main.cpp ,我想把它构建成visual studio的工程。
图4
  • 在当前目录创建CMakeLists.txt(文件名是固定这个名字)文件,输入以下内容(#后为注释),保存:

# 设置CMake的最低版本要求
cmake_minimum_required(VERSION 3.10)

# 定义项目名称和版本号
project(MyProject VERSION 1.0)

# 设置C++标准为C++11
# CMAKE_CXX_STANDARD变量指定使用的C++标准
# CMAKE_CXX_STANDARD_REQUIRED变量确保使用指定的C++标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)

# 添加一个可执行文件
# add_executable命令会生成一个名为MyExecutable的可执行文件,源文件为main.cpp
add_executable(MyExecutable main.cpp)

  • 在源码(main.cpp)的当前目录右键选择“在终端打开”,输入以下命令,执行后,如图5:

mkdir build         #新建文件夹“build”
cd build              #进入文件夹
cmake -G "Visual Studio 16 2019" ..  #指定vs2019构建工程

图5
  • 此时在build文件下就能看到创建的工程,如图6:
图6
  • 打开工程生成解决方案后,在debug目录就能找到可执行程序。
图7
图8

提示

上述步骤,了解整体思路就好。对于如何写CMakeLists.txt里的内容无需细扣(除了有需要的情况),github仓库会提供的。

对于具体的 从github上获取源码、生成依赖库/可执行程序 的例子可以参考我的如下两篇文章:

windows下protobuf编译器、依赖库的cmake安装_cmake依赖protobuf库-CSDN博客

windows下abseil的安装——基于cmake、vs2019-CSDN博客

附录

想用其他版本的话,修改

cmake -G "Visual Studio 16 2019" ..  #指定vs2019构建工程

为:

cmake -G "Visual Studio 14 2015" ..

cmake -G "Visual Studio 15 2017" ..

cmake -G "Visual Studio 16 2019" ..

cmake -G "Visual Studio 17 2022" ..

标签:cmake,工程,..,Windows,入门教程,Visual,源码,Studio
From: https://blog.csdn.net/weixin_45007596/article/details/140644748

相关文章

  • Windows 任务计划程序:在不打开窗口的情况下运行 .py 脚本
    我被要求从Windows任务计划程序运行一个python脚本。在我的python脚本中,我将大量使用看门狗库来实例化并运行一个观察者,该观察者将监视特定目录路径中的文件更改file_handlers.pyimporttimeimportloggingfromwatchdog.observersimportObserverfro......
  • 全球电脑蓝屏!Windows 10系统崩溃引发世界级混乱
    2024年7月19日,一场突如其来的技术灾难席卷全球,无数Windows10用户遭遇电脑蓝屏死机,引发全球范围内的恐慌和混乱。这场由CrowdStrike软件更新触发的系统崩溃事件,成为史上最严重的科技灾难之一,让世界见证了科技巨头的脆弱时刻。据报道,微软公司确认了旗下Microsoft365系列服务......
  • Windows使用NVM管理node.js
    NVM(NodeVersionManager)是一个开源的命令行工具,用于管理多个版本的Node.js在同一台计算机上。NVM允许开发者轻松地安装、切换和管理不同版本的Node.js,这对于在多个项目上工作或测试Node.js的不同特性时非常有用。在macOS或Linux上,通常通过curl或wget下载安......
  • 逆向分析学习入门教程(非常详细)零基础入门到精通,看这一篇就够了!_逆向都要学啥
    前沿从本篇起,逆向工厂带大家从程序起源讲起,领略计算机程序逆向技术,了解程序的运行机制,逆向通用技术手段和软件保护技术,更加深入地去探索逆向的魅力。一、程序如何诞生?1951年4月开始在英国牛津郡哈维尔原子能研究基地正式投入使用的英国数字计算机“哈维尔·德卡特伦”,是......
  • Windows Defender SmartScreen 已阻止启动一个未识别的应用
    对于软件开发者或者软件开发公司来说,发布应用程序后会面临一个难题,那就是用户在下载此应用程序时,SmartScreen会弹出“WindowsDefenderSmartScreen已阻止启动个未识别的应用,运行此应用可能会导致您的电脑面临风险” 的警告,这种警告不利于用户信任,还有可能会减少用户下载率......
  • Windows 使用 Visual Studio 2013 编译 paho-mqtt 生成dll lib 文件
    前言全局说明Windows使用VisualStudio2013编译paho-mqtt生成dlllib文件一、说明环境:Windows7旗舰版VisualStudio2013RTMPROCHS二、环境准备2.1安装VisualStudio2013https://www.cnblogs.com/wutou/p/183205322.2安装CMakehttps://www.cnblo......
  • 如何在 Linux 主机和 KVM 中的 Windows 客户机之间共享文件夹
    原文https://linux.cn/article-16023-1.html在本指南中,你将了解如何在Linux主机(例如使用KVM的Fedora、Ubuntu或LinuxMint)下运行的Windows客户机之间共享文件夹。virt-manager 应用(带有 libvirt)和软件包提供了一组灵活的工具来管理Linux中的虚拟机。它是自由开......
  • STM32入门教程:LED闪烁
    STM32是一款流行的微控制器系列,具有广泛的应用领域。在本教程中,我们将介绍如何使用STM32来控制LED灯的闪烁。第一步:准备工作在开始编写代码之前,我们需要准备一些必要的工具和材料。首先,我们需要一款能够编程的STM32微控制器开发板,例如ST-LinkV2。其次,我们需要一个集成开发......
  • STM32入门教程:智能健康监测
    STM32是一种嵌入式微控制器,是STMicroelectronics公司开发的一款产品。它具有高性能、低功耗、丰富的外设接口等特点,非常适合用于智能健康监测等应用领域。本教程将以智能健康监测为例,详细介绍如何使用STM32进行开发。主要包括以下内容:硬件准备开发环境搭建传感器使用......
  • 尝试在 Windows 上将 PyTorch 与 CUDA 结合使用时出现问题
    我正在编写使用Whisper的代码,我需要带有CUDA的PyTorch来提高模型执行速度,我安装了CUDA(使用nvidia-smi命令进行验证,显示我有CUDA12.6)并且我安装了PyTorch使用命令pipinstalltorchtorchvisiontorchaudio--index-urlhttps://download.pytorch.org/whl......