当前位置:  技术问答>linux和unix

apue源代码 unp源代码 以及编译方法

    来源: 互联网  发布时间:2017-04-08

    本文导语:  1.apue源代码地址:http://download.csdn.net/detail/s393102639/3697248  说明:解压源码之后先不要直接make,看看readme。下面以我的系统为例说明一下:         sss@sss-desktop:~/apue.2e$ uname -a Linux sss-desktop 2.6.32-33-generic #72-Ubuntu SMP Fri...

1.apue源代码地址:http://download.csdn.net/detail/s393102639/3697248
 说明:解压源码之后先不要直接make,看看readme。下面以我的系统为例说明一下:
       

sss@sss-desktop:~/apue.2e$ uname -a
Linux sss-desktop 2.6.32-33-generic #72-Ubuntu SMP Fri Jul 29 21:08:37 UTC 2011 i686 GNU/Linux


To build the source, edit the Make.defines.* file for your system and set 
WKDIR to the pathname of the tree containing the source code.
我的系统是linux 所有我需要打开Make.defines.linux文件把#WKDIR=/home/sar/apue.2e改为
WKDIR=/home/sss/apue.2e   (这是我放代码的位置)

现在可以make了,但是会发现当make到threadctl目录的时候会报错

sss@sss-desktop:~/apue.2e/threadctl$ make
gcc -DLINUX -ansi -I/home/sssz/apue.2e/include -Wall -D_GNU_SOURCE   -c -o detach.o detach.c
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -c -o getenv1.o getenv1.c
getenv1.c:4: error: ‘ARG_MAX’ undeclared here (not in a function)
make: *** [getenv1.o] 错误 1

这是因为包含的头文件limits.h没有ARG_MAX,vi打开该文件/usr/include/limits.h 添加一行代码 (需要root权限)

#define ARG_MAX 4096

这行代码最好添加在文件的靠近开头的部分,我添加的位置是第36行
现在在make应该不会出错了
最后,如果要单独make一个文件夹的文件 可以执行make -f linux.mk(这里选自己操作系统对应的)

sss@sss-desktop:~/apue.2e/threadctl$ make -f linux.mk 
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -c -o getenv1.o getenv1.c
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -c -o getenv2.o getenv2.c
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -c -o getenv3.o getenv3.c
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -L../lib  atfork.c  ../lib/libapue.a -pthread -o atfork
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -c -o timeout.o timeout.c
timeout.c: In function ‘main’:
timeout.c:93: warning: ‘condition’ is used uninitialized in this function
timeout.c:95: warning: ‘arg’ may be used uninitialized in this function
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE  timeout.o detach.o  ../lib/libapue.a -pthread -o timeout
gcc -DLINUX -ansi -I/home/sss/apue.2e/include -Wall -D_GNU_SOURCE   -L../lib  suspend.c  ../lib/libapue.a -pthread -o suspend


2.unp源代码地址:http://download.csdn.net/detail/s393102639/3697263
说明:解压源码之后先不要直接make,看看readme。下面以我的系统为例说明一下:
1. 执行

./configure

2.分辨进入到lib和libfree目录执行make(这两个是必须的),如果你的系统是4.4BSD就进入到libroute目录make,如果是XTI就进入到libxti目录make,因为我的系统在linux所以这两个都不需要去make
3.进入intro目录执行make daytimetcpcli 如果能执行成功说明没有问题了(其实其他目录我还没有试过)
每个目录都可以单独进入然后make

|
谢谢LZ分享!!

|
额,看看就行了,编译出来也是那样.

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 下载了APUE源码,怎么打不开啊?
  • 文件名为“apue.tar.Z”的文件在UNIX下怎么打开?大家帮帮忙
  • APUE第2版的例2-1的疑问
  • apue书上的概念,读过这本书的请进
  • 刚学完apue,大家给个建议
  • 求apue的课后答案~~~~~~~~~~~~~
  • APUE 看完之后,拿什么练练手?
  • apue.h的问题
  • APUE+macro
  • apue中的一个问题
  • APUE相关章节不容易理解。
  • 关于apue2 中一个例子的提问
  • apue书的的信号函数,看不懂
  • APUE中 system函数的实现中的问题
  • 哪位兄弟在看apue?相互交流一下
  • APUE中“信号”一节的问题
  • apue 上的 Figure3.10运行后,输出怎么是空白
  • apue学习问题 第八章 进程控制 相关
  • apue page113
  • 关于unix环境高级编程的apue的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,