apue.3e 的安装 (基于ubuntu12.0.4)

本菜刚刚学习UNIX下高级编程,无奈搭建本书编程环境时遇到不少问题。幸好网上有各种大神的解决办法让我最终解决了问题。在这里感谢为LINUX开源操作系统奋斗的大神。

不过话说回来,网上大都是针对UNIX高级编程第二版的头文件搭建,现在对于第三版来说,有些过时,因为很对针对linux的make文件已经改变了很多。

话不多说,下面就来看看具体的搭建过程:(本人用的操作系统是ubuntu 14.04LTS)

1.在网上下载书中源代码,点击打开链接

2.解压文件:tar -zxvf *.tar.gz

3.cd apue.3e/

4.make

在这个过程中,你会看到最后由于can,t find -lbsd而不能make成功,解决办法是添加libbsd.a的静态链接库

sudo apt-get install libbsd-dev

5.make(again)

6.在编译成功的基础上,我们进行安装apue.h文件及其对应的静态链接库libapue.a

sudo cp ./include/apue.h /usr/include/
      sudo cp ./lib/libapue.a /usr/local/lib/
为什么要将libapue.a移到/usr/local/lib中呢?原因是libapue.a是apue.h头文件中包含的所有函数及宏定义的具体实现,是一个静态链接库。

查看ld.conf.d/libc.conf你会发现gcc在搜索链接库的时候默认会去搜索/usr/local/lib/中的文件,所以我们将其放在这里,一劳永逸。。。。(不过自己要知道哦)

7.以上环境搭建成功了,下面是测试。

8.gcc 1-3.c -o 1-3 -lapue  (libapue.a在这里要写成apue,具体的gcc使用规则可以man一下,呵呵)

9.看见1-3执行程序了吧,赶紧执行一下

./1-3 .

原文地址:

http://blog.sina.com.cn/s/blog_94977c890102vdms.html

时间: 2024-10-08 08:16:03

apue.3e 的安装 (基于ubuntu12.0.4)的相关文章

Windows 上安装msql库安装(基于8.0.19免安装版)

一.进入官网进行下载mysql程序包: https://dev.mysql.com/downloads/mysql/ 二.解压缩 解压文件夹到指定目录,我放在 D:\mysql-8.0.19-winx64 下 三.安装配置 1.管理员身份打开cmd 2.进入mysql目录bin文件下面 cd  D:\mysql-8.0.19-winx64\bin 3.初始化mysql mysqld --initialize --console 执行完成后,会打印 root 用户的初始默认密码,请注意妥善报错  

基于Ubuntu12.04下的Keystone源码安装

Keystone 概述:Keystone 作为Openstack最早期的核心项目独立发展,由于Openstack 采取的设计理念也是所有一切皆API,因此设计服务API的调用脱离不了Keystone.Keystone 作为Openstack 中身份认证服务,在Openstack起到非常关键的作用,并且实现了Identity API 供Openstack 其他组件间进行身份验证 Keystone 两种认证方式:UUID认证的原理当用户拿着有效的用户名和密码去keystone认证后,keystone

基于centos7.3 redhat7.3安装LAMP(php7.0 php7.1)生产环境实践

#将yum安装的包缓冲到本地,然后制作本地local_yum vim /etc/yum.conf #本机信息 hostname LAMP ip 192.168.42.10 #由于官网yum源下载慢,这里添加ali源 yum clean all rm -rf /etc/yum.repos.d/*.repo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo wget -O /e

使用RPM包离线安装MariaDB 10.0.20 , 基于CentOS 6.6-x86-64

使用RPM包[离线]安装 MariaDB 10.0.20,基于CentOS 6.6-x86-64 Minimal 湘中朱生 2015-07-01 于深圳福田 QQ: 872007255 MariaDB交流群: 198111730 文档说明: 1. 网上有很多关于MariaDB/Mysql数据库的安装技术博客文档,主要有源码编译安装和Yum源安装,有些写得很规范优秀,但很少有基于离线RPM包安装的. 2. 源码编译安装对于初学者而言门槛过高, 很容易打击MariaDB初学者学习探索的积极性; Yu

ubuntu12.0.4安装启动后无法进入图形操作界面

在VMware10.0.4虚拟机上安装ubuntu12.0.4版本后,启动linux后,无法进入图形界面,但是可以进入字符界面.通过查阅网上资料,有人说是VMware的3D图形加速没有关闭,于是通过查阅系统日志 cat /var/log/kern.log , 发现确实有一条error信息是invalid SVGA 3D,于是关闭操作系统,在虚拟机的设置页面中关闭3D图形加速,然后重启就可以进入图形界面了.

基于apache和mysql,安装seafile - v1.0

seafile:下一代的开源云存储更好的文件同步,隐私保护和团队协作功能!本文基于官方文档,补充描述基于apache和mysql,安装seafile服务器. 原文网址:https://cloud.seafile.com/group/762/wiki/%E5%9C%A8apache%E7%8E%AF%E5%A2%83%E4%B8%8B%E9%83%A8%E7%BD%B2seafile/ 修改:陈海青(http://hhrz.org) 1.准备 下载安装预装了apache和mysql的虚拟机(基于d

基于CentOS6.5环境之下的LNMP之编译安装Nginx1.8.0 stable(稳定版)

LNMP之编译安装Nginx1.8.0 stable(稳定版) 1.yum安装nginx所欲要的生存环境,也就是库文件 yum -y install make gcc gcc-c++ glibc glibc-devel automake autoconf libtool make 2.给nginx添加系统用户 useradd -s /sbin/nologin -M -r nginx 3.解压安装nginx1.8.0 tar xf nginx-1.8.0.tar.gz  cd nginx-1.8.

unix 环境高级编程第三版 源码无法 make 成功, 对‘heapsort’未定义的引用 -apue.3e

http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/ 我的环境是centos7 x86_64 查看方法: [[email protected] ~]# uname -aLinux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 找到对应的rpm ,下载进行安装即可

CentOS 7 安装 Zabbix 3.0

CentOS7搭建Zabbix 一.安装数据库: 1.  安装数据库:sudo  yum  grouinstall mariadb mariadb-server –y 2.  启动数据库:sudo systemctl  start mariadb 3.  设置开机启动:sudo systemctl enable mariadb 4.  初始化数据库:sudo mysql_secure_installation            //设置密码为123456 二.安装Zabbix 1.  下载Z