讓Tiny服務器運行起來

讓Tiny服務器運行起來

之前寫了《深入理解計算機系統》一書中的Tiny服務器的源碼解析,但是書中並沒有介紹如何運行Tiny,下面就介紹下怎麼讓Tiny運行起來。

Tiny的源文件有tiny.c、csapp.c和csapp.h三個。另外要在根目錄下新建cgi-bin目錄用於存放CGI程序。

方法一:

1.將所有源文件tiny.c、csapp.c和csapp.h放在同一個目錄下。另外在同一目錄下放置photo.jpg作爲測試文件。使用命令:

$gcc -o tiny tiny.c csapp.c -lpthread

  注:加-lpthread是因爲csapp.c中有些函數用了多線程庫
2.將測試用CGI程序放到cgi-bin目錄下,並編譯成可執行程序

$gcc -o adder adder.c

3.運行Tiny程序,並指定端口號(1024–49151可用,其它爲知名端口)

$./tiny 1024

4.現在Tiny已經運行起來了,打開瀏覽器就可以訪問了
訪問靜態內容
這裏寫圖片描述
訪問動態內容
這裏寫圖片描述

方法二:使用Makefile完成Tiny的編譯鏈接:

前一段時間看過Makefile的一些知識,所以我就試一下用make命令來運行Tiny。

1.與方法一不同的是,在工作目錄下新建include目錄,把csapp.h放置到該目錄下。然後編寫Makefile如下

CFLAGS= -Wall -g -I./include 
LIBS=-lpthread

tiny: tiny.o csapp.o 
    cc -o tiny tiny.o csapp.o $(LIBS)

clean:
    rm *.o tiny 

  Makefile中使用CFLAGS設置編譯參數並指定頭文件的位置爲./include。用LIBS指定要鏈接的庫。
2.在工作目錄中輸入命令make,即可完成Tiny的編譯鏈接。
這裏寫圖片描述
3.後續的操作與方法一是一樣的,不再贅述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章