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

网站开发标准合同网站建设南通

网站开发标准合同,网站建设南通,律师怎么做网络推广,公司网站制作与推广我们上次用shell命令和vscode编译链接muduo库服务端代码,本章节实现编写CMakeLists.txt来编译项目。本次简单介绍CMake,并用Cmake编译上次的muduo服务器代码。 1.为什么使用cmake 我们在编译项目时,如果编写Makefile的话,常常会…

我们上次用shell命令和vscode编译链接muduo库服务端代码,本章节实现编写CMakeLists.txt来编译项目。本次简单介绍CMake,并用Cmake编译上次的muduo服务器代码。

1.为什么使用cmake

我们在编译项目时,如果编写Makefile的话,常常会很麻烦,需要写大量的依赖关系。然而CMake使用简单方便,可以跨平台,直接生成一个Makefile。因此我们可以选择编写CMakeLists.txt文件,自动生成Makefile文件。

2.CMake安装

我们在安装muduo库时已经安装了CMake了,但为了讲解CMake完整,本次也简单介绍下CMake安装:

sudo apt install cmake

查看版本:

cmake -version

3.VSCode配置CMake

为了在使用vscode时由代码提示,我们在vscode远程安装CMake Tools和CMake两个插件。然后cmake tools设置点击扩展设置:在这里插入图片描述
然后添加环境变量:
在这里插入图片描述

4.cmake实现上一章的muduo服务器项目

首先先看下目录结构:
在这里插入图片描述
这是最简单的文件结构了,我们看看CMake怎么生成一个Makefile文件。
一般我们在终端需要使用以下指令去编译链接等操作:

g++ -o 编译结果(可执行文件/*.a/*.so) 需要编译的源文件列表 -编译选项(-g/-o等) 多个*.cpp -I头文件搜索路径 -L库文件搜索路径 -l库文件名

列如我们在本列中使用以下指令:

g++ -o server muduo_server.cpp -lmuduo_net -lmuduo_base -lpthread

我们在CMakeLists.txt中输入以下信息,每段内容会注释介绍

cmake_minimunm_required(VERSION 3.0)  //最低的cmake版本
project(项目名称)
# 配置编译选项
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -g) ##CMAKE_CXX_FLAGS是CMake预定义变量:设置 C++ 编译选项
# 配置头文件搜索路径
# include_directories()
# 配置库文件搜索路径
# link_directories()# 设置需要编译的源文件列表
set(SRC_LIST ./muduo_server.cpp)# 设置可执行文件最终存储的路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)# 把.指定路径下的所有源文件名字放入变量名SRC_LIST里面(因为一个一个添加会很麻烦)
# aux_source_directory(. SRC_LIST)# 表示生成可执行文件server,由SRC_LIST变量所定义的源文件编译而来
add_executable(server ${SRC_LIST})
# 表示server这个目标程序,需要连接muduo_net muduo_base pthread这三个库文件
target_link_libraries(server muduo_net muduo_base pthread)

然后使用cmake 生成Makeflie文件

cmake CMakeLists.txt

在这里插入图片描述
由上图可见生成了很多新的文件,除了Makefile文件,其他都是临时文件,可以删除。
然后我们使用make命令去执行Makefile文件

make

最终在bin中生成了可执行文件。
但是生成了很多临时文件,我们可以希望生成的临时文件不影响原来的文件,我们可以在创建一个build文件夹,在这个文件下下使用cmake,这样临时文件都在build文件下,目录结构如下:
在这里插入图片描述
在build文件夹下执行cmake,生成Makefile和其他临时文件

cmake ..

目录结果:
在这里插入图片描述
使用make执行Makefile:

make

结果如下:
在这里插入图片描述
在bin目录下生成了可执行文件。

总结

本章介绍了为什么使用cmake:比手写Makefile简单,cmake安装、vscode配置,以及用cmake编译上一章的代码。但是对于一个复杂的项目,使用cmake还需要其他额外的配置,后面会再详细介绍。

http://www.yayakq.cn/news/270014/

相关文章:

  • 搜索网站存在的关键字如何寻找外贸公司订单
  • wordpress 更改后台地址推广优化关键词
  • 上海网站建设门户巨腾网站建设
  • 做百度推广需要自己有个网站吗品牌策划ppt案例
  • 正规的佛山网站建设灵璧做网站公司
  • 自己做网站怎么加定位做视频上传可以赚钱的网站
  • 网站建设笔记做团购网站有什么难处
  • 青岛网站制作工作室给我做网站的人老是给我留点尾巴
  • 品牌推广外包烟台seo网站推广费用
  • 免费建站网站网页网络维保
  • 建站塔山双喜淘宝上网站建设续费
  • 新华网两学一做专题网站建设部网站投诉核查
  • 大连网站建设ewaylife网站浮动窗口怎么做
  • 网站连接如何做二维码电商网页设计期末作业模板
  • 做网站ps文字有锯齿台州关键词首页优化
  • 中能建西北城市建设有限公司网站东莞企业网站设计公司
  • 杭州网站关键词优化那个网站做logo兼职
  • iis 网站访问权限设置东莞推广就莞用服务平台
  • 网站 字号 英文wordpress基础开发教程 pdf
  • 互联网站备案做公众号一般在哪个网站照片
  • 做课宝官方网站免费的logo设计制作工具
  • 网站备案通过什么可以备案优化设计答案大全
  • 婚纱摄影网站源码下载闵行交大附近网站建设
  • 做网站什么主题好做网站实施要求
  • wordpress建立移动站青岛专业做外贸网站
  • 织梦网站上传及安装步骤做网站的合同
  • 买网站注册人数哈尔滨网站托管
  • 精美网站设计合肥网络推广软件
  • 佳木斯建网站的wordpress怎么发布公告
  • 移动端网站开发与网页开发区别阿里巴巴关键词排名优化