最近在看【UNIX网络编程 卷1 套接字联网API(第3版)】

想找个环境编译一下书上的代码。

研究了一下,发现源代码在mac上编译和linux编译几乎没有区别。

也对,mac本来就是基于FreeBSD,是比linux还unix的系统。

不过这原生的支持感还是让我惊叹。

我要用mac的原因是因为手上只有mac,而mac上有宇宙第一IDE:VS Code。。。

如果用阿里云ubuntu云主机,总感觉没有本地编译那么爽,那么畅快。

还是觉得VS Code比Vim好用。。。

在mac上编译直接按照unpv13e.tar.gz里面的README来就行,和linux上操作方法完全一样。

Execute the following from the src/ directory:./configure    # try to figure out all implementation differencescd lib         # build the basic library that all programs needmake           # use "gmake" everywhere on BSD/OS systemscd ../libfree  # continue building the basic librarymake

唯一要注意的是:在libfree目录下直接make会报编译错误。需要修改一个地方。

将libfree/inet_ntop.c第60行的size_t size改成socklen_t size。

-       size_t size;
+       socklen_t size;

准备工作完毕,然后就可以在指定目录下编译自己想要编译的Example了。

    cd ../intro    # build and test a basic client programmake daytimetcpcli./daytimetcpcli 127.0.0.1If all that works, you're all set to start compiling individual programs.Notice that all the source code assumes tabs every 4 columns, not 8.

MAC下学习UNIX网络编程相关推荐

  1. UNIX网络编程之旅-配置unp.h头文件环境

    最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#include "unp.h"  相当有个性并且也很便捷 于是我把第三版的源代码编译实现了这个过程 ...

  2. Unix网络编程之-------unp.h头文件详细配置-1

    unix网络编程unp.h最详细全面配置说明 今天开始学习Unix网络编程这本大神之作了,由于之前在学习另外一本杰作Unix环境高级编程,遇到过第一个程序编译报错的情况,知道这是大神自己写的头文件在我 ...

  3. 《UNIX网络编程 卷1:套接字联网API》学习笔记——基本TCP套接字编程

    UNIX网络编程--基本TCP套接字编程 socket 函数 connect 函数 bind 函数 listen 函数 accept 函数 fork 和 exec 函数 并发服务器 close 函数 ...

  4. Unix网络编程学习日记

    今天开始拜读<Unix网络编程>.找到的源代码在Linux下有各种问题,最后决定还是自己从头写比较好. 从第一个时间服务程序开始学习.今天先看一下主要的头文件的作用. 在common.h中 ...

  5. UNIX网络编程学习笔记(代码超详细解析)(持续更新)

    1. 其他函数准备 1. TCP 回射服务器程序: str_echo 函数 #include "unp.h"void str_echo(int sockfd) {ssize_t n ...

  6. linux下网络编程设置非阻塞,UNIX网络编程 非阻塞connect的实现

    一.<UNIX网络编程>-非阻塞connect 在一个TCP套接口被设置为非阻塞之后调用connect,connect会立即返回EINPROGRESS错误,表示连接操作正在进行中,但是仍未 ...

  7. 再读Socket编程——《UNIX网络编程(卷一)》学习点滴

    原先曾以Socket编程为入口开始自己的新的学习,毕竟未曾致用,时至今日已比较生疏.借着阅读<UNIX网络编程(卷一)>(简称UNPv1)的机会,正好复习一番,而且希望将新的感受记录下来. ...

  8. Unix网络编程 学习记录01

    写在前面 秋招面试微信折戟,决定好好折腾一下c++和网络,武装一下自己的技术栈,先从最基本的网咯编程开始.<UNIX网络编程 卷1>有不少实践的机会,于是先从这本书下手. 能坚持多久是多久 ...

  9. python网络编程要学吗_总算发现如何学习python网络编程

    为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,version是模块的预编译版本编码,一般都包含Python的版 ...

  10. Unix——《Unix网络编程》配置unp.h头文件

    <Unix网络编程 卷1>unp.h 头文件及其编译问题 本书源码下载地址 http://www.unpbook.com 解压tar -zxvf unpv13e.tar.gz 其实各个编译 ...

最新文章

  1. Lighttpd1.4.20源代码分析 笔记 状态机之错误处理和连接关闭
  2. AI 寻宝!美国女博士用 YOLOv3 打造沉船探测器,杰克船长:我错过了 100 亿
  3. python 逐行读取csv_在R中如何逐行读取CSV文件并将内容识别为正确的数据类型?...
  4. listview在java中的使用_我的Android开发之路——ListView的使用
  5. 阿里云携领先SDN能力,亮相全球网络技术盛会ONS
  6. svn图形化控制(svnmanager)
  7. EXCEL VBAProject密码破解 工作表密码破解
  8. 2019年最新web前端笔试题
  9. 外星人笔记本 键盘灯不亮解决 Alienware 13
  10. python画circos图_CIRCOS圈图绘制 – 最简单绘图和解释
  11. 【MATLAB数字图像处理】伪彩色增强
  12. 长期执业的顶尖领先律所ROSEN提醒Mylan N.V.投资者注意MYL证券集体诉讼的重要截止日期为8月25日
  13. 学Python编程好找工作吗?岗位方向多吗?
  14. javascript 高级写法
  15. Javascript正则表达式表示固定开头和结尾的字符串
  16. python中小括号和中括号的区别_Python3中小括号()、中括号[]、花括号{}的区别详解...
  17. 呀!原来这就是前端监控系统
  18. linux 机器开机自动运行命令的方法
  19. Java/Kotlin 最多保留两位小数处理方法
  20. 汉字转换拼音首字母(可以处理部分多音字)

热门文章

  1. 豆丁网文档免登陆免积分下载工具原理分析
  2. autojs控制台美化
  3. 汽车诊断之UDS入门-0x19 0x06服务
  4. niva mysql_Nivacat for mysql是一种第三方提供的()_学小易找答案
  5. 各纬度气候分布图_气候分布图纬度_世界气候气压带风带分布图要图(需要表识纬度)_滁州气象...
  6. ActiveMQ菜鸟入门教程
  7. 如何在VirtualBox中安装win7虚拟机?
  8. 操作系统(02326)课后习题答案
  9. kaggle TMDB5000电影数据分析和电影推荐模型数据分析相关函数解释参考文章:
  10. VSCode 中文乱码