长生栈 长生栈
首页
  • 编程语言

    • C语言
    • C++
    • Java
    • Python
  • 数据结构和算法

    • 全排列算法实现
    • 动态规划算法
  • CMake
  • gitlab 安装和配置
  • docker快速搭建wordpress
  • electron+react开发和部署
  • Electron-创建你的应用程序
  • ImgUI编译环境
  • 搭建图集网站
  • 使用PlantUml画时序图
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Living Team

编程技术分享
首页
  • 编程语言

    • C语言
    • C++
    • Java
    • Python
  • 数据结构和算法

    • 全排列算法实现
    • 动态规划算法
  • CMake
  • gitlab 安装和配置
  • docker快速搭建wordpress
  • electron+react开发和部署
  • Electron-创建你的应用程序
  • ImgUI编译环境
  • 搭建图集网站
  • 使用PlantUml画时序图
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Cmake 基本使用
    • Linux和Windows常用命令对比
    • Nginx的使用方法
    • Bash常用语法
    • 使用PlantUml画时序图
    • 使用PlantUML画类图
    • 编译工具链
    • gcc工具的概述和使用
    • 自动化构建工具——Make/Makefile
    • 使用开源AI模型Whisper为视频生成字幕
    • MySQL基础操作
    • 工具
    DC Wang
    2022-03-25
    目录

    Cmake 基本使用原创

    # Cmake

    cmake_minimum_required (VERSION 2.8)
    project (network)
    message("Project Name: " ${PROJECT_NAME})
    aux_source_directory(. ALL_SRCS)			                # 添加当前目录下所有的源文件
    add_subdirectory(socket)						            # 添加math子目录
    add_executable(network ${ALL_SRCS})	                        # 指定生成目标,注意这里要用${ALL_SRCS}!!!
    target_link_libraries(network server)	                    # 添加链接库,power是在math子目录的CMakeLists中定义的
    set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)       # 设置执行文件输出目录
    
    #
    #include_directories(${PROJECT_SOURCE_DIR}/src/include)     # 添加头文件路径
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    # 设置最小支持CMake的版本,本地环境不能低于这个版本

    cmake_minimum_required (VERSION 2.8)
    
    1

    # 设置项目名称

    project (network)
    
    1

    # 打印消息

    message("Project Name: " ${PROJECT_NAME})
    
    1

    # 将当前文件夹下所有源文件存入变量ALL_SRCS

    aux_source_directory(. ALL_SRCS)
    
    1

    # 添加子目录,执行子目录中的CMakeLists.txt的内容

    add_subdirectory(socket)
    
    1

    # 生成可执行文件,其中${ALL_SRCS}是上文中存储的所有源文件,network是生成可执行文件的名字

    add_executable(network ${ALL_SRCS})	
    
    1

    # 链接动态库,server是socket子目录下生成的动态库名称

    target_link_libraries(network server)
    
    1

    # 设置可执行文件的输出目录

    set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
    
    1

    # 添加需要包含的头文件的目录

    include_directories(${PROJECT_SOURCE_DIR}/src/include)
    
    1
    编辑 (opens new window)
    #Cmake#编译工具
    上次更新: 2022/10/03, 09:24:26
    Linux和Windows常用命令对比

    Linux和Windows常用命令对比→

    最近更新
    01
    ESP32-网络摄像头方案
    06-14
    02
    ESP32-PWM驱动SG90舵机
    06-14
    03
    ESP32-实时操作系统freertos
    06-14
    更多文章>
    Theme by Vdoing | Copyright © 2019-2025 DC Wang All right reserved | 辽公网安备 21021102001125号 | 吉ICP备20001966号-2
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式