UNIX網(wǎng)絡編程卷1:unpv13e編譯運行(2)

第一:我要說一點呛凶,UNIX網(wǎng)絡編程這本書非常之經(jīng)典,高手必讀系列

第二:就算不讀此系列書籍行贪,你照樣可以做一個應用開發(fā)者漾稀,但為什么我們要學此塊知識。這個問題嘛瓮顽,張無忌為什么學習乾坤大挪移等武功都比其他人快且厲害县好,因為他有高深的九陽神功內(nèi)功

第三:UNIX網(wǎng)絡編程這本書中的api接口你可能在接下來很長一段時間甚至工作中都見不到,那么我們需要死記嗎暖混?這個問題嘛缕贡,重在理解其中原理,先大體調(diào)試幾遍拣播,隨著經(jīng)驗和閱歷的增加你的感受會慢慢加深晾咪,選取其中重點的一些接口記憶,其他的知道有這么個東西贮配,使用時查閱即可

第四:如果你碰到真正的計算機高手谍倦,別人肯定會建議你有事沒事看源碼(ps:那些天天嚷著需求最重要,計算機只是實現(xiàn)工具泪勒,模板改改拖一拖控件就可以的人可以靠邊了)昼蛀,而此書,就是看服務程序源碼的基礎圆存。

第五:接下來要編譯的unpv13e是什么叼旋?

unix網(wǎng)絡編程這本書中的源碼,在學習此書之前沦辙,我們需要將其下載編譯夫植,便于以后調(diào)試

1.源碼環(huán)境和地址

我采用的是ubuntu14.04 64位系統(tǒng)

下載地址:http://pan.baidu.com/s/1i44Szzv

或者安裝wget油讯,然后切到~/Downloads/下運行 wget http://www.unpbook.com/unpv13e.tar.gz (推薦wget這個工具详民,很好用)

2.解壓和查看目錄結構

cd ~/Downloads/? //進入下載目錄

tar -zxvf unpv13e.tar.gz   //解壓壓縮文件夾

cd unpv13e/???? //進入解壓后的文件夾,里面結構顯示如下

unpv13e中包含許多子文件夾陌兑,每一個子文件夾都代表一個具體模塊的實例沈跨,比如,在intro文件夾中兔综,顯示的是第一章簡介中的所有實例程序集合

3.編譯

編譯unix卷1中的示例源碼時饿凛,會碰到一些問題隅俘。最大的問題在于平臺的差異(以后碰到再說),以后不管是這個源碼還是其他什么架構的安裝笤喳,作為一個IT工作者为居,我們首先要查看其中的說明和文檔,此處查看/unpv13e/ 下的README文件

cd ~/Downloads/unpv13e

vim README,此處給出部分截圖

于是杀狡,照著上述步驟蒙畴,第一步

./configure ,部分截圖如下

那么./configure 這句話到底是什么意思呢? 簡單說來呜象,它就是起到一個檢查和生成的作用膳凝。檢查你的系統(tǒng)類型,檢查你的gcc恭陡,檢查你的某些頭文件是否存在蹬音,檢查某些數(shù)據(jù)類型是否被定義,檢查某些機制是否存在等休玩,最后會生成makefile文件著淆。

//?build the basic library that all programs need

輸入命令行:

cd lib

make

如果沒有報error,則說明make成功

make具體做了什么呢拴疤?查看打印在屏幕上的信息可以發(fā)現(xiàn)永部,對于里面的.c文件都做了類似這樣的操作

gcc -I../lib -g -O2 -D_REENTRANT -Wall?? -c -o connect_nonb.o connect_nonb.c, 主要就是把.c文件都編譯生成了對應的目標文件呐矾。然后ar rv ../libunp.a connect_nonb.o connect_timeo.o ...?? 把所有目標文件模塊都歸入libunp.a庫中苔埋,以后鏈接此庫時直接 -lunp(體現(xiàn)軟件重用的思想)

接下來

cd ../libfree?     # continue building the basic library

make

碰到問題如下:

解決辦法: vim inet_ntop.c + 60? 定位到函數(shù)頭,修改size_t? 變?yōu)閟ocklen_t類型

然后結果如下

warning不管蜒犯,是書籍作者沒有初始化參數(shù)组橄。

接下來

cd ../libroute ? ? ? ? ? ? ? ? ? ? # only if your system supports 4.4BSD style routing sockets

make

發(fā)現(xiàn)缺少頭文件,編譯終止罚随,因為我用的系統(tǒng)不支持路由套接字(什么是路由套接字以后會慢慢講解)

cd ../libxti??       # only if your system supports XTI

make

我的系統(tǒng)也不支持XTI

最后

cd ../intro???     # build and test a basic client program

make

正常完成玉工,也就是說unix卷1第一章簡介中的所有程序都編譯鏈接完成,可以正常運行

下面我們來測試:

先啟動時間服務程序(一般linux可能自帶時間服務程序毫炉,但默認可能是不開啟的瓮栗,你也可以直接開啟自帶的時間服務程序)

sudo ./daytimetcpsrv &  記住權限問題削罩,開啟服務程序瞄勾,一般需要綁定和監(jiān)聽端口號,需要授予較高權限弥激,所以sudo

再運行客戶端時間獲取程序

./daytimetcpcli 127.0.0.1

截圖如下

成功=浮!微服!

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末趾疚,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌糙麦,老刑警劉巖辛孵,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異赡磅,居然都是意外死亡魄缚,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門焚廊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冶匹,“玉大人,你說我怎么就攤上這事咆瘟〗腊” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵袒餐,是天一觀的道長飞蛹。 經(jīng)常有香客問我,道長灸眼,這世上最難降的妖魔是什么桩皿? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮幢炸,結果婚禮上泄隔,老公的妹妹穿的比我還像新娘。我一直安慰自己宛徊,他們只是感情好佛嬉,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著闸天,像睡著了一般暖呕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上苞氮,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天湾揽,我揣著相機與錄音,去河邊找鬼笼吟。 笑死库物,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的贷帮。 我是一名探鬼主播戚揭,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼撵枢!你這毒婦竟也來了民晒?” 一聲冷哼從身側響起精居,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎潜必,沒想到半個月后靴姿,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡磁滚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年空猜,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片恨旱。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡辈毯,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出搜贤,到底是詐尸還是另有隱情谆沃,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布仪芒,位于F島的核電站唁影,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏掂名。R本人自食惡果不足惜据沈,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望饺蔑。 院中可真熱鬧锌介,春花似錦、人聲如沸猾警。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽发皿。三九已至崔慧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間穴墅,已是汗流浹背惶室。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留玄货,地道東北人皇钞。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像誉结,于是被迫代替她去往敵國和親鹅士。 傳聞我的和親對象是個殘疾皇子券躁,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354