加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

unix网络编程书代码因旧操作系统有bug,如何解决这个问题或在哪里获取新代码?

发布时间:2020-05-27 21:36:04 所属栏目:Linux 来源:互联网
导读:我试图在Linux上下载并运行c代码UNIX网络编程,第1卷,第2版:网络API:套接字和XTI,Prentice Hall,1998,ISBN 0-13-490012-X.这是由W.史蒂文斯理查德 http://kohala.com/start/unpv12e/unpv12e.tar.gz 但是,当我构建代码时,我得到了错误: gcc -g -O2 -D

我试图在Linux上下载并运行c代码

UNIX网络编程,第1卷,第2版:网络API:套接字和XTI,Prentice Hall,1998,ISBN 0-13-490012-X.这是由W.史蒂文斯理查德

 http://kohala.com/start/unpv12e/unpv12e.tar.gz

但是,当我构建代码时,我得到了错误:

  gcc -g -O2 -D_REENTRANT -Wall   -c -o connect_nonb.o connect_nonb.c
  In file included from connect_nonb.c:1:
   unp.h:114: error: redefinition of struct in_pktinfo
   make: *** [connect_nonb.o] Error 1

我注释掉了struct in_pktinfo.然后我遇到了新的错误:

   gcc -g -O2 -D_REENTRANT -Wall   -c -o in_cksum.o in_cksum.c
   gcc -g -O2 -D_REENTRANT -Wall   -c -o inet_ntop.o inet_ntop.c
   inet_ntop.c: In function inet_ntop:
   inet_ntop.c:61: error: argument size doesnt match prototype
   /usr/include/arpa/inet.h:67: error: prototype declaration
   make: *** [inet_ntop.o] Error 1

我不想一个接一个地调试整个575文件.

没有这些错误,我在哪里可以获得新代码?新版本书有无错误的代码?

旧代码仅适用于旧操作系统.

谢谢

最佳答案 好吧,Author Richard Stevens在1999年去世,书仍然是一个非常好的参考.关于很多超过10年的技术参考,你不能这么说.

我刚刚从http://www.unpbook.com/unpv13e.tar.gz获取源代码并跟随自述文件,这基本上意味着运行./configure并在目录中调用make

/lib
/libfree
/intro

我修复了一个地方(libfree / inet_ntop.c:60并将大小更改为socklen)并在我当前的Ubuntu上编译.我没有运行它,但我相信至少大部分都可以运行.

理查德史蒂文斯的书仍然很出色,值得为保持他的资源运行所需的微小努力.

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读