【C++】HP-Socket(一): 下载、Linux上编译、Windows远程编译Linux版本

1、简介

国产、高性能、跨平台网络通信框架。

作者于2024-01-01更新了Release版本v5.9.4,辛苦了,向作者致敬!

源码下载:
https://gitee.com/mirrors/hp-socket
https://github.com/ldcsaa/HP-Socket

2、编译

2.1 在Linux上编译

1)进入Linux/script目录:cd ~/git/HP-Socket-dev/Linux/script
2)对脚本添加可执行权限:~/git/HP-Socket-dev/Linux/script$ chmod +x *
3)运行编译脚本:compile.sh

~/git/HP-Socket-dev/Linux/script$ ./compile.sh 
Action: compile
------------------+---------------------------------------
        HP-Socket : v5.9.4 [BN:01]
     compile path : /home/laoer/git/hp-socket/HP-Socket-dev/Linux
       --platform : x64
       --compiler : g++
  --mem-allocator : mimalloc
 --with-debug-lib : true
    --udp-enabled : true
   --http-enabled : true
    --ssl-enabled : true
   --zlib-enabled : true
 --brotli-enabled : true
  --iconv-enabled : true
------------------+---------------------------------------
Are you sure? [Y/n]: 

4)安装:./install.sh -p 【安装路径

~/git/HP-Socket-dev/Linux/script$ ./install.sh -p /home/laoer/libs
Action: install
---------------+-------------------
     HP-Socket : v5.9.4 [BN:01]
  install path : /home/laoer/libs
      lib path : /home/laoer/libs/lib64
 arch platform : x64
 install demos : true
---------------+-------------------
Are you sure? [Y/n]: y
  > create /home/laoer/libs/lib64/libhpsocket.a
……略
  > create /home/laoer/libs/include/hpsocket/SocketInterface.h
Done!

2.2 在Windows下远程编译Linux

2.2.1 在 Visual Studio 中安装 Linux 工具集

1)打开 Visual Studio Installer,点击“修改”
在这里插入图片描述

2)选择Linux开发工具集
在这里插入图片描述
3)安装

2.2.2 配置Linux服务器

1)本人使用VirtualBox虚拟机,需要先设置网卡连接方式为“”桥接网卡
在这里插入图片描述
2)安装 ssh-server

sudo apt install openssh-server

2.2.3 在 Visual Studio 中连接远程的Linux

在这里插入图片描述

2.2.4 编译

1)在根目录下创建MyWork,将HP-Socket源码源码拷贝至此
注意:为了和工程中的默认配置相同,需要将源码拷贝至此:~/MyWork/HP-Socket
在这里插入图片描述
2)打开工程
在这里插入图片描述
3)打开工程属性页
在工程上右键,点击“属性”
在这里插入图片描述
4)修改“远程生成计算机”,选择自己的远程连接
注意下面的远程根目录,要和实际的一致。
在这里插入图片描述
5)编译即可

本人对Visual Studio不熟,如果有错,请指正

3、编译demo

1)以teshecho为例,加载工程后如下图
在这里插入图片描述
2)同样需要修改三个项目的配置
在这里插入图片描述
3)如果报错找不到“Global”目录下的文件,需要在linux上将 “MyWork/HP-Socket/Linux/demo/global” 复制为“MyWork/HP-Socket/Linux/demo/Global”

4)可执行程序生成目录:~/MyWork/HP-Socket/Linux/demo/Debug/x64
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis:原理速成+项目实战——Redis实战4(解决Redis缓存穿透、雪崩、击穿)

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:Redis:原理项目实战——Redis实战3(Redis缓存最佳实践(问题解析高级实现)&#x…

一文读懂Solana 上最正统的铭文通证$mash

早在 2023 年的 11 月,包括 Solana、Avalanche、Polygon、Arbitrum、zkSync 等生态正在承接比特币铭文生态外溢的价值。当然,因铭文赛道过于火爆,当 Avalanche、BNB Chain 以及 Polygon 等链上 Gas 飙升至极值,Arbitrum、zkSync 等…

什么是聚合支付,又能带来哪些好处?

随着科技的飞速发展,人们的支付方式也在不断地发生变革。从最初的现金支付、银行卡支付,到现在的移动支付、扫码支付等,支付方式已经变得越来越便捷。聚合支付作为一种新型的支付方式,也在逐渐改变着人们的生活方式。那么&#xf…

如何正确使用docker搭建靶场--pikachu

在Linux中搭建靶场——pikachu 1.开启docker systemctl start docker 2.查看docker状态 systemctl status docker 3.查看docker存在那些镜像 docker images 4.拉取镜像,这里是以pikachu为例因此需要一个php5的版本 (1)打开代理&#xff…

CMake入门教程【核心篇】添加文件(aux_source_directory)

😈「CSDN主页」:传送门 😈「Bilibil首页」:传送门 😈「本文的内容」:CMake入门教程 😈「动动你的小手」:点赞👍收藏⭐️评论📝 文章目录 1.概述2.使用方法3.完…

技术资讯:Vue 3.4 新版本发布,1分钟快速看看改了啥!

大家好,我是大澈! 本文约1000字,整篇阅读大约需要1分钟。 感谢关注微信公众号:“程序员大澈”,免费领取"面试礼包"一份,然后免费加入问答群,从此让解决问题的你不再孤单&#xff01…

Node.js本地搭建简单页面小游戏

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation&#xff0…

《JSR303参数校验》

一、基础概述 1.简介 Java API 规范 (JSR303) 定义了 Bean 校验的标准 validation-api,但没有提供实现。hibernate validation 是对这个规范的实现,并增加了校验注解如 Email、Length 等。Spring Validation 是对 hibernate validation 的二次封装&…

用邮件及时获取变更的公网IP--------python爬虫+打包成exe文件

参考获取PC机公网IP并发送至邮箱 零、找一个发送邮件的邮箱 本文用QQ邮箱为发送邮箱,网易等邮箱一般也有这个功能,代码也是通用的。 第一步:在设置中找到账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,点击获…

基于springboot+vue零食商城管理系统

摘要 基于Spring Boot Vue的零食商城管理系统是一项集成了先进技术的电商解决方案。此系统以Spring Boot为后端框架,结合Vue.js构建前端,致力于实现零食商城的高效管理和用户友好的界面体验。首先,Spring Boot框架作为后端核心,为…

12月,全国各地电子签推广应用政策汇总

12月,国务院及各地政府办公厅、市监局、住建委等机关部门,持续推动电子印章、电子合同等功能在“政府采购、工程项目审批、企业开办等”领域深化应用,加快实现电子签章互信互认,不断简化办事流程,让越来越多高频常办事…

2_并发编程同步锁(synchronized)

并发编程带来的安全性同步锁(synchronized) 1.他的背景 当多个线程同时访问,公共共享资源的时候,这时候就会出现线程安全,代码如: public class AtomicDemo {int i0;//排他锁、互斥锁public void incr(){ //synchronizedi; …

动手学深度学习一:环境安装与数据学习

2024,重新开始深度学习。 第一步:李沐动手学深度学习 课程网址:https://courses.d2l.ai/zh-v2/ 包含教材和视频网址链接 Jupyter notebook安装 目前在本地先使用cpu版本pytorch,我的本地已经安装好conda,跟着教材创建…

Vue 中的 ref 与 reactive:让你的应用更具响应性(中)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

Spring高手之路-Spring中Bean的五大作用域

目录 Singleton(单例):默认的作用域 Prototype(原型) Request(请求) Session(会话) Global Session(全局会话) 五大作用域范围对比 作用域…

Jenkins持续集成(下篇)

(四)Jenkins 配置构建执行状态 运行构建 在项目 左侧列表点击 “立即构建” ,在 “Build History” 列表,你会得到一个红色的小圆点,表示构建失败。 点击 构建失败的任务(红色的小圆点)。然后点…

Python用selenium实现自动登录和下单的项目实战

前言 学python对selenium应该不陌生吧 Selenium 是最广泛使用的开源 Web UI(用户界面)自动化测试套件之一。Selenium 支持的语言包括C#,Java,Perl,PHP,Python 和 Ruby。目前,Selenium Web 驱动…

Java 语言概述

Java 概述 是 SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言 是一种面向 Internet 的编程语言。Java 一开始富有吸引力是因为 Java 程序可以在 Web 浏览器中运行。这些 Java 程序被称为 Java 小程序&am…

专题一_双指针(一)

文章目录 283.移动零题目解析讲解算法原理扩展编写代码 1089.复习零题目解析讲解算法原理编写代码 202.快乐数题目解析讲解算法原理证明编写代码 11.盛最多水的容器题目解析讲解算法原理暴力解法优秀的解法时间复杂度分析 编写代码 283.移动零 题目链接 题目解析 题目还是比较…

成为一名合格的前端架构师,前端知识技能与项目实战教学

一、教程描述 本套前端架构师教程,大小35.94G,共有672个文件。 二、教程目录 01.node介绍和环境配置(共6课时) 02.ES6语法(共5课时) 03.node基础(共29课时) 04.Express框架&am…