Windows系统安装轻量级高性能Web服务开发框架OAT++

2023-10-22 13:11

本文主要是介绍Windows系统安装轻量级高性能Web服务开发框架OAT++,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、软件简介


oat++ 是一个轻量级高性能 Web 服务开发框架,采用纯 C++ 编写而成。
官网:https://oatpp.io/   这个坑爹的网址在国内经常打不开,要多刷新几次。
Github: https://github.com/oatpp/oatpp  

当前版本:  1.3.0

其主要特性有:

•    随处运行
Oat++ 没有任何依赖性,可以很容易地移植到各种支持的平台上(Linux、MacOS、Windows)。
•    构建健壮的api
使用 Oat++ Simple-API,构建灵活而健壮的 API 既简单又有趣。
•    处理 500 万个连接
使用 Oat++ Async-API,可以在单个服务器上处理超过 500 万个并发连接。
•    访问数据库
Oat++ ORM 提供了一种简单而统一的方式来访问数据库
•    保持代码一致
Oat++ 在整个代码库中依靠对象映射来确保 API 和数据模型的一致性
•    生成 API 文档
使用 Swagger-UI 和 OpenAPI 3.0.0 自动记录 endpoints

二、环境要求

•    Git
https://git-scm.com/
当前版本2.39.1

•    CMake
https://cmake.org/
当前版本3.25.1

•    Microsoft Visual Studio
https://visualstudio.microsoft.com/zh-hans/
我使用的是Community 2022版,安装的时候至少要选择“使用C++的桌面开发”,如果要使用MFC,还要选择“适用于最新v143生成工具的C++ MFC (x86和x64)”以及“Visual Studio 扩展开发”

 

 

 

 

 

 

另外我使用的操作系统是Windows 7 旗舰版

三、安装OAT++

在oat++的官网上,安装非常简单,就几行命令。

这几个命令的问题是:只能安装debug win32 的版本,没有release win32 版本的,也没有x64版本的。还有一个问题是github.com 经常连不上。所以我把安装过程改了改。
我们这个文档是给不喜欢使用命令行的同学看的,对于喜欢命令行的同学来说,可以直接使用git和cmake命令。

首先下载oat++源码
运行windows开始菜单里的“Git GUI” 

点击Clone Existing Repository

 

Source Location输入:https://gitee.com/mirrors/oatpp.git
这里用的是镜像站点https://gitee.com/mirrors/oatpp.git,这是国内的网站,速度会快一些。当然你也可以使用原始站点:https://github.com/oatpp/oatpp.git
Target Directory输入:D:\code\oatpp
这是存放源代码的文件夹,要保证这个文件夹是空的。如果没有这个文件夹,倒是没什么关系,Git GUI会自动创建文件夹。


 
点击Clone按钮,开始下载源代码。下载完成后,会打开工作窗口

 

这个窗口我们不使用,直接关掉。
现在我们打开oatpp文件夹,就可以看到里面的源码了:
 

接着建立工作目录

建立两个文件夹x64和win32,这两个文件夹用来作为工作目录

运行windows开始菜单里的“CMake (cmake-gui)” 

点击Browse Source…按钮,选择oatpp文件夹,这是设置源代码所在的文件夹
点击Browse Build…按钮,选择x64文件夹,这是设置工作目录 

 点击Configure按钮

点击Optional platform for generator (if empty, generator uses: x64)下面的下拉框
 

选择x64 , 这样编译出来的就是x64版本的软件。如果要编译win32版本的,就选择Win32

点击Finish按钮,回到CMake主窗口

 

点击Generate按钮

 

窗口最下面出现“Generating done”,就说明Generate工作完成。

现在我们打开x64文件夹就会看到里面已经产生了Visual Studio的解决方案

 

 双击oatpp.sln文件,启动Visual Studio

我们可以看到,现在是在Debug x64模式下,如果要编译Release x64版本,就要点击Debug下拉框,改成Release。如果要编译win32版本,就要在上文提到的CMake里面设置Optional platform for generator (if empty, generator uses: x64)为win32

右击解决方案资源管理器中的“INSTALL”,在弹出菜单中选择“生成”,等几分钟,等它运行结束之后,我们查看输出窗口

可以看到oat++已经被安装到C:\Program Files\oatpp 文件夹了
文件夹C:\Program Files\oatpp\lib\oatpp-1.3.0 里面的oatpp.lib文件,就是我们需要的库文件,它是Debug x64版本的
文件夹C:\Program Files\oatpp\include里面就是头文件
另外x64\src\Debug文件夹下面也有库文件

现在我们把Visual Studio 改为 Relaese模式

 

右击解决方案资源管理器中的“oatpp”,在弹出菜单中选择“生成”,等它运行完之后,查看输出窗口 

可以看到x64\src\Release文件夹里面已经生成了Release x64版本的oatpp.lib

Debug Win32 和 Release Win32版本的编译

至于Debug Win32 和 Release Win32版本的编译,基本和x64版本相同,要注意的就是CMake里面设置Optional platform for generator (if empty, generator uses: x64)为Win32 

 另外工作目录的选择要注意,不能再用x64文件夹,应该改成其他文件夹,我这里使用了win32文件夹。生成的解决方案如下图所示:

 双击oatpp.sln,运行Visual Studio,这回出现Debug Win32模式了:

我们可以看到Debug Win32模式下,安装的路径变成了C:/Program Files (x86)/oatpp/ 

 

这篇关于Windows系统安装轻量级高性能Web服务开发框架OAT++的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/261670

相关文章

关于DNS域名解析服务

《关于DNS域名解析服务》:本文主要介绍关于DNS域名解析服务,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录DNS系统的作用及类型DNS使用的协议及端口号DNS系统的分布式数据结构DNS的分布式互联网解析库域名体系结构两种查询方式DNS服务器类型统计构建DNS域

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

Spring 框架之Springfox使用详解

《Spring框架之Springfox使用详解》Springfox是Spring框架的API文档工具,集成Swagger规范,自动生成文档并支持多语言/版本,模块化设计便于扩展,但存在版本兼容性、性... 目录核心功能工作原理模块化设计使用示例注意事项优缺点优点缺点总结适用场景建议总结Springfox 是

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

如何使用Maven创建web目录结构

《如何使用Maven创建web目录结构》:本文主要介绍如何使用Maven创建web目录结构的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录创建web工程第一步第二步第三步第四步第五步第六步第七步总结创建web工程第一步js通过Maven骨架创pytho

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

如何使用Haporxy搭建Web群集

《如何使用Haporxy搭建Web群集》Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多如LVS和Nginx,本案例介绍使用Haproxy及Nginx搭建一套Web群集,感兴趣的... 目录一、案例分析1.案例概述2.案例前置知识点2.1 HTTP请求2.2 负载均衡常用调度算法 2.