vs2010下搭建winpcap編譯環境
一、下載WinPcap安裝包和開發包
1.首先是winpcap的安裝包,下載地址:http://www.winpcap.org/install/default.htm
下載完成後,直接開啟安裝,一路預設,OK搞定。
2.接著下載開發包,下載地址:http://www.winpcap.org/devel.htm
下載完畢後解壓壓縮包到dev資料夾內,在檔案內可以找到這兩個資料夾:include和lib
二、編寫第一個程式(使用的是vs2010)
1.開啟vs,新建空工程:sniffer,然後在【專案-屬性-VC++目錄】中將include和lib路徑分別新增到包含目錄和庫目錄中(不加入會提示找不到標頭檔案)
2.然後我們開啟dev/WpdPack/Examples-pcap/basic_dump/將檔案basic_dump.c複製到工程目錄下,並在工程中新增這個檔案到工程中。編譯,我們將看到如下的錯誤:【error C1083: 無法開啟包括檔案:“sys/time.h”: No such file or directory】,這個是由於我們沒有定義WIN32這個巨集,導致編譯器認為我們是在Linux下編譯,所以就回去包含sys/time.h檔案,這個檔案是在linux下才會包含的,所以我們在【專案-屬性-c/c++-前處理器-預處理定義】中新增WIN32定義。再次編譯。
3.我們又將看到錯誤:【error LNK2019: 無法解析的外部符號 _pcap_close,該符號在函式 _main 中被引用 】這種無法解析外部符號一般都是函式有宣告,但是沒有定義就被使用了,進一步就是沒有包含庫檔案,所以我們在【專案-屬性-連結器-輸入-附加依賴項】中新增引用:wpcap.lib,再次編譯即可編譯通過。
4.成功執行後,即可完成環境的搭建。