Libuv的安装及运行使用

Libuv的官网链接:http://libuv.org/

GitHub下载链接:https://github.com/libuv/libuv

CMake下载链接:https://cmake.org/download/

以下演示使用VS2022

下载安装

  由于此次演示运行平台为Windows平台,即需要CMake编译为visual studio项目进行编译运行。

  下载后Libuv框架的目录结构如下:

  紧接着,使用CMake生成visual studio项目。(打开CMake)如下:


  以下信息默认安装即可。

  以下内容无需取消勾选,在BUILD_TESTING和LIBUV_BUILD_TESTS中有最基础的模块,可供学习(即如果已经熟练掌握Libuv框架,可以取消BUILD_TESTING和LIBUV_BUILD_TESTS的勾选)。最后再次点击Configure,然后再点击Generate。如下:

  最终,可以点击Open Project打开项目(但是需要注意:如果电脑上不仅仅有vs2022,还有其他版本,可能会使用其它版本打开,最好是直接找到build文件目录下的sln文件,鼠标右键使用vs2022打开

运行使用

  使用vs2022打开界面如下:

  接下来是项目配置的关键,请各位读着注意。(内容为博主实践所得,仅供参考)

运行uv_run_tests_a项目(生成lib文件)

TIPS:此处也可以尝试直接运行uv_a项目生成uv_a.lib文件(生成的lib文件相同)。

 鼠标右键运行uv_run_tests_a项目,如下:


  出现如下结果,表示运行成功。

  打开文件所在位置,我们会发现不仅仅有exe文件,而且由我们所需要的lib文件,如下:

  接下来在当前解决方案下新建一个空项目,如下:




  首先,新建一个.c文件,如下:


  然后右键TestDemo01项目,属性配置如下信息:

TIPS:关于项目的输出目录和中间目录如何配置,可以参考以下链接,这里不过多阐述:https://ufgnix0802.blog.csdn.net/article/details/121366990

输出目录:$(SolutionDir)\$(ProjectName)\bin/$(Platform)\$(Configuration)

中间目录:$(SolutionDir)\$(ProjectName)\temp/$(Platform)\$(Configuration)

  紧接着,配置如下信息:

TIPS:D:\libuv\include所包含的库是必须要引入的,当然路径方面也可以使用跟输出目录和中间目录相同的配置原理(博主这里不进行演示)。

  还有需要配置的项,如下:


需要添加的内容有:

iphlpapi.lib
userenv.lib
psapi.lib
ws2_32.lib
libs\uv_a.lib

TIPS:注意确定后,务必点击应用,同上述。

  其中,最后一项libs\uv_a.lib,我们需要使用到我们运行uv_run_tests_a项目所生成的lib文件,在当前项目下生成一个libs文件夹,放入以下文件。


  最后我们需要引入task.h头文件到当前项目中,如下(该文件可以从libuv/test目录下找寻):

  复制至TestDemo01项目中,如下(并将task.h添加至TestDemo01项目):


运行实践

  将libuv/test目录下的echo-server.c文件的内容复制至main.c中,如下:


  最后在main.c中定义main函数,内容如下:

int main()
{run_helper_tcp4_echo_server();//调用方式一,调用宏函数//调用方式二,直接复制宏函数代码/*loop = uv_default_loop();if (tcp4_echo_start(TEST_PORT))return 1;notify_parent_process();uv_run(loop, UV_RUN_DEFAULT);*/return 0;
}

  将该项目设置为启动项目,运行结果如下:

  生成的文件信息如下:

  以下为使用sokit工具模拟出来的客户端终端的效果:

Libuv的安装及运行使用相关推荐

  1. 在Ubuntu 12.04 64bit上配置,安装和运行go程序

    注意: 下面的安装配置均遵从官网或是教材<Go语言程序设计>中的部分内容. 顺便说下,这是一本很难得的Go语言的入门教程,非常基础和全面.起初我因为这本书的封面比较讨厌它,闲置几年之后,一 ...

  2. flume 1.7在windows下的安装与运行

    flume 1.7在windows下的安装与运行 一.安装 安装java,配置环境变量. 安装flume,flume的官网http://flume.apache.org/,下载地址,下载后直接解压即可 ...

  3. RabbitMQ安装和运行

    RabbitMQ在Windows下安装和运行 1.下载Erlang: http://www.erlang.org/downloads/19.2 2.下载Windows版RabbitMq: http:/ ...

  4. Python3入门笔记(1) —— windows安装与运行

    Python3入门笔记(1) -- windows安装与运行 Python的设计哲学是"优雅"."明确"."简单".这也是我喜欢Python ...

  5. Windows下Go语言的安装和运行

    参考:https://blog.csdn.net/SquirrelYuyu/article/details/82776029 Windows下Go语言的安装和运行 文章目录 Go语言的安装与配置 Go ...

  6. python详细安装教程视频-如何安装Python运行环境Anaconda?(视频教程)

    本视频教程针对Windows 7平台,集成3.6版本Python的Anaconda录制. 根据我多次线下编程工作坊获得的反馈经验,发现Python初学者居然在环境安装步骤,就很可能遭受挫折. 如果没有 ...

  7. vc2005运行库彻底卸载_解决不安装VC运行库(VC2005,VC2008),程序运行出错的方法...

    因为VS2005以后程序采用了manifest的生成方式,所以发布的时候要和运行库一起发布.但是我们平时开发和发布的时候如果都要客户安装运行库,那就不太方便了.你可以Microsoft下载:http: ...

  8. Sublime Text 3(中文)在Windows下的配置、安装、运行

    Sublime Text 3(中文)下载.安装.运行! 本文提供全流程,中文翻译. Chinar坚持将简单的生活方式,带给世人! (拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) ...

  9. Anaconda:Anaconda安装图文教程及其tensorflow安装、运行、测试之最强详细攻略

    Anaconda:Anaconda安装图文教程及其tensorflow安装.运行.测试之最强详细攻略 导读 能够在进行深度学习之前把这些辅助工具Python.Anaconda.GPU.Tensorfl ...

最新文章

  1. JavaScriptjQuery.变量作用域
  2. unity导出fbx模型_ARTBOOK艺书专栏:Fbx导出杂谈
  3. 高性能Mysql--Schema与数据类型优化
  4. 关于使用安装Adobe绿色精简版所需运行库
  5. Objective-C征途:Hello Objective-C
  6. adb 切换默认桌面_公告 | 武林外传手游官方服务器全面开放桌面版体验
  7. 在vlan2用计算机名访问,计算机是如何访问一个网页的?vlan间如何实现通信?
  8. 随想录(kgdb的基本原理)
  9. 重构改善既有代码设计--重构手法19:Replace Data Value with Object (以对象取代数据值)...
  10. 如何开发与设计一个爆款小游戏
  11. python数据结构与算法知识点_数据结构和算法基础知识点(示例代码)
  12. Module build failed (from ./node_modules/postcss-loader/src/index.js):
  13. UVN相机模型矩阵推导
  14. 【数据库】第五章 数据库的完整性(2020.4.15)联系第三章
  15. 树莓派基础实验13:雨滴探测传感器实验
  16. 变电所、分区所、AT所
  17. 猫眼IPO后,在线票务平台或抛弃补贴战,未来看电影又贵了?
  18. IT男的魔都10年及N次面试 - 如何在500强升职顺便搞定漂亮MM
  19. 石家庄地铁路线安排网站的最终版本——博客登记
  20. JavaWeb笔记02(数据库)

热门文章

  1. 《Cinema 4D + After Effects动态图形设计案例解析》——第 1 章 动态图形设计概述 1.1 什么是动态图形...
  2. 狼人杀游戏(单人联机)(C++)
  3. java生成高斯模糊图片
  4. 使用DOM技术操纵文档
  5. 对tcp三次握手的详解之 理解TCP序列号(Sequence Number)和确认号(Acknowledgment Number)
  6. 美国政府发布《软件供应链安全客户实践建议指南》
  7. 线程池踩坑记 --load飙高的原因
  8. python中标点符号大全及名字_标点符号大全及名字
  9. win10 VS2017编译Audacity详细教程
  10. 影响工程项目进度的因素有哪些