天天看點

unix環境進階程式設計第三版環境配置

1.問題

下載下傳src.3e.tar.gz,解壓,進入目錄apue.3e,然後make,出現以下錯誤

make[1]: 進入目錄“/root/test/apue.3e/threads”

gcc -ansi -I../include -Wall -DLINUX -D_GNU_SOURCE  barrier.c -o barrier  -L../lib -lapue -pthread -lrt -lbsd

/tmp/ccddCiAZ.o:在函數‘thr_fn’中:

barrier.c:(.text+0x80):對‘heapsort’未定義的引用

collect2: 錯誤:ld 傳回 1

make[1]: *** [barrier] 錯誤 1

make[1]: 離開目錄“/root/test/apue.3e/threads”

make: *** [all] 錯誤 1

2.解決辦法

1)ubuntu

sudo apt-get install libbsd-dev

2)centos等

我的系統是centos7的,由于centos7系統沒有libbsd-devel,網上有很多部落格說可以用下面的指令可以安裝

sudo yum install libbsd-0.6.0-1.el6.i686.rpm

sudo yum install libbsd-devel-0.6.0-1.el6.i686.rpm

我的系統上反正是不能安裝,是以需要自行下載下傳libbsd和libbse-devel,有需要的朋友的可以到我的網盤下載下傳

http://pan.baidu.com/s/1pKK8LQz,也可以在shell中執行以下指令下載下傳:

wget http://elrepo.reloumirrors.net/testing/el6/x86_64/RPMS/libbsd\-0.2.0-4.el6.elrepo.x86_64.rpm

wget http://elrepo.reloumirrors.net/testing/el6/x86_64/RPMS/libbsd-devel-0.2.0-4.el6.elrepo.x86_64.rpm

下載下傳以後安裝,按以下指令安裝:

rpm -ivh libbsd-0.6.0-1.el6.x86_64.rpm

rpm -ivh libbsd-devel-0.6.0-1.el6.x86_64.rpm

然後重新make就ok了。



繼續閱讀