Linux操作系统Ubuntu部署GCC之Libpcap库篇
?Ubuntu操作系統GCC之Libpcap庫部署
1.啟動虛擬機,進入Ubuntu操作系統,打開firefox瀏覽器;
2.下載并安裝四個組件:
?????? 1)m4源代碼:http://ftp.gnu.org/gnu/m4/
???????????? 版本:m4-1.4.16.tar.gz
????????????? 解壓和安裝:
tar -zxvf m4-1.4.16.tar.gz
cd m4-1.4. 16
sudo ./configure
sudo make
sudo make install
??? 2)flex源代碼:http://prdownloads.sourceforge.net/flex/ ??
版本:flex-2.5.35.tar.bz2
????????????? 解壓和安裝:
tar -zxvf flex-2.5.35.tar.bz2
cd flex-2.5.35
sudo ./configure
sudo make
sudo make install
??? 3)bison源代碼:http://ftp.gnu.org/gnu/bison/
版本:bison -2.5.tar.gz
????????????? 解壓和安裝:
tar -zxvf bison -2.5.tar.gz
cd bison -2.5
sudo ./configure
sudo make
sudo make install
??? 4)libpcap源代碼:http://www.tcpdump.org/
版本:libpcap-1.2.0rc1.tar.gz
????????????? 解壓和安裝:
tar -zxvf libpcap-1.2.0rc1.tar.gz
cd libpcap-1.2.0
sudo ./configure
sudo make
sudo make install
3.編譯執行下面代碼通過:
#include<stdio.h>
#include<pcap.h>
int main()
{
char *dev, errbuf[PCAP_ERRBUF_SIZE];
dev=pcap_lookupdev(errbuf);
if(dev==NULL){
fprintf(stderr,"couldn't find default device: %s\n",errbuf);
return(2);
}
printf("Device: %s\n",dev);
return(0);
}
===============================================================
1)編譯這段代碼: gcc -o testout test.c -lpcap
?? 以管理員非root身份執行:./testout
?? 輸出結果:couldn't find default device: no suitable device found;
?????? ?? 需激活root身份并以root身份執行程序;
===============================================================
2)激活命令式root身份,終端窗口執行下面命令:
切換到root身份:sudo -i
設置root身份密碼:sudo passwd root
Enter password for root
Confirm password for root?
激活圖形化 root 登陸:注銷后進入登陸界面,選擇“其他”,輸入用戶名:root,密碼為命令式激活時所設置的;
===============================================================
3)以root身份執行成功輸出結果:Device: eth0
——執行命令一:sudo su,直接切換到root下的對應目錄執行程序:
????????????? fjs@fjs-virtualBox:~$ cd demo
fjs@fjs-virtualBox:~/demo$ sudo -su
[sudo]password for fjs:
????????????? root@fjs-virtualBox:/home/fjs/demo# ./testout
——執行命令二:sudo -i,切換到root后用cd命令定位到/home下的對應目錄執行程序:
????????????? fjs@fjs-virtualBox:~$ sudo –i
????????????? root@fjs-virtualBox:~# cd /home/fjs/demo
??? root@fjs-virtualBox: /home/fjs/demo# ./testout
===============================================================
4)執行提示:error while loading shared libraries: libpcap.so.1: cannot open shared object file: No such file or directory;
以root身份登陸解決:
——確認libpcap.so.1在/usr/local/lib目錄下;
——打開/etc目錄下的文件ld.so.conf,添加兩行(非root身份不能修改該文件):
/usr/local/lib
/usr/lib
——在root終端下執行從新加載配置的命令:
加載:ldconfig
顯示條件為libpcap的文件:ldconfig –v|grep libpcap
===============================================================總結
以上是生活随笔為你收集整理的Linux操作系统Ubuntu部署GCC之Libpcap库篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux操作系统Ubuntu部署GCC
- 下一篇: Linux操作系统Ubuntu部署Mys