文章目录
- 1. 项目说明
- 1.1 项目特点
- 2. 文件说明
- 2.1 脚本文件
- 2.1.1 `TCP_IP.sln`
- 2.1.2 `xmake.lua`
- 2.1.2.1 编译说明
- 2.1.2.2 运行说明
- 2.1.3 章节说明
项目代码已经开源在github上!
微信公众号文章同步发表!
1. 项目说明
根据《TCP/IP网络编程》书籍学习,对其中的代码进行整理,并且对应做了一些优化处理,将部分通用的部分合并到DreamSky
这个库中,然后在本工程的文件中进行调用。
1.1 项目特点
- 全部使用
cpp
进行重新开发,并且要求c++11
及以上的标准。 - 在
Windows
和Linux
平台下均可以直接编译,无需文件和平台强相关。 - 使用
xmake
作为项目的构建工具,支持多平台的快速构建。 Windows
下额外提供了标准的vs sln
解决方案,方便代码阅读和直接IDE调试。- 统一命名规范,避免原书代码的杂乱。
- 对编程基础要求很低……真的很低……
2. 文件说明
2.1 脚本文件
2.1.1 TCP_IP.sln
vs
的解决方案文件,并且处理好了各种依赖关系,可以直接一键编译,不需要进行任何额外处理。
注意:
这个解决方案中,只做了
x64 debug
的工程设计,其余的平台和模式的直接参考这个进行处理即可,属于重复工作量……
2.1.2 xmake.lua
xmake
的构建脚本,处理好了子目录的各级编译,也只需要命令行直接编译即可,但是在编译本工程之前需要先准备好DreamSky
的xmake
打包文件,可参考工程说明进行编译处理。
2.1.2.1 编译说明
假设在DreamSky
中已经使用xmake
进行了编译,并且打包到了TCP_IP/DreamSky
目录下,那么这里既可以在xmake.lua
中配置DreamSky
包的目录:
-- 这是 DreamSky 的库
add_repositories("local-repo DreamSky")
add_requires("dreamcommon")
add_requires("dreamsocket")
add_requires(