acl 的編譯與使用

      acl 庫的功能參見文章 <acl介紹>,本文主要講述如何編譯和使用 acl 庫。ui

      acl 下其實有四個庫:lib_acl (基礎庫)、lib_protocol(http 和 icmp 協議庫)、lib_dict(封裝了 bdb, cdb, Tokyo Cabinet 庫的用於字典查詢的庫)以及 lib_tls(封裝了openssl部分功能的庫,主要用於 lib_acl 的 ssl 加密傳輸)。其中,筆者用的最多仍是 lib_acl 和 lib_protocol 兩個庫,因此本文主要介紹這兩個庫的編譯與使用。加密

      開始時 acl 庫是支持 Linux、Solaris、FreeBSD 和 Windows 平臺的,但後來因爲受限於機器環境,因此如今僅支持到 Linux 和 Windows 兩個平臺了,其它幾個平臺歡迎讀者進行移植。.net

 

      1、Linux 平臺上編譯3d

      一、編譯 lib_acl.a 庫調試

      進入 lib_acl/ 目錄,直接運行 make,正常狀況下即可在 lib/ 目錄下生成 lib_acl.a 靜態庫,用戶在使用 lib_acl.a 編寫本身的程序時,須要在本身的 Makefile 文件中添加以下選項:blog

      1.一、編譯選項:-I 指定 lib_acl/include 所在目錄,-DLINUX2 指定 Linux 平臺ssl

      1.二、連接選項:-L 指定 lib_acl.a 所在目錄,-l_acl 指定須要連接 lib_acl.a 庫get

       同時,用戶須要在本身的源程序中包含 lib_acl 的頭文件,以下:openssl

       #include "lib_acl.h"it

 

       二、編譯 lib_protocol.a 庫

       進入 lib_protocol/ 目錄,直接運行 make,正常狀況下即可以在 lib/ 目錄下生成 lib_protocol.a 靜態庫,用戶在使用 lib_protocol.a 編寫本身的程序時,須要在本身的 Makefile 文件中添加以下選項:

       2.一、編譯選項:-I 指定 lib_protocol/include 所在目錄,-DLINUX2 指定 Linux 平臺

       2.二、連接選項:-L 指定 lib_protocol.a 所在目錄,-L 指定 lib_acl.a 所在目錄,-l_protocol -l_acl

       同時,用戶須要在本身的應用程序中包含 lib_protocol 頭文件,以下:

       #include "lib_protocol.h"

 

      2、Windows 平臺

      2.1 編譯

      進入 acl\win32_build\vc 目錄,用 vc2003 打開工程文件:acl_project_vc2003.sln  (原來還支持VC6及VC2008,但也很久沒有更新這兩個工程文件了)。用戶能夠選擇編譯 lib_acl、lib_protocol 的靜態庫調試版、靜態庫發佈版、動態庫調試版以及動態庫發佈版,編譯完成後,會在 acl\dist\lib\win32 目錄生成的靜態庫有:

      lib_acl_vc2003d.lib、lib_acl_vc2003.lib、lib_protocol_vc2003d.lib 和 lib_protocol_vc2003.lib;
      生成的與動態庫相關的文件有:lib_acl_d.dll/lib_acl_d.lib,lib_acl.dll/lib_acl.lib,lib_protocol_d.dll/lib_protocol_d.lib 和 lib_protocol.dll/lib_protocol.lib。

 

      2.2 使用

      a)在 win32 平臺下使用 lib_acl 和 lib_protocol 靜態庫時,只須要在包含目錄中添加 lib_acl/include 和 lib_protocol/include 所在的路徑,在連接時指定靜態庫路徑及靜態庫名稱。

      b)在 win32 平臺下使用 lib_acl 的動態庫時,不只要作與 a) 中所指定的操做,並且須要在預處理器定義中添加:ACL_DLL;在使用 lib_protocol 的動態庫,須要在預處理器定義中添加:HTTP_DLL 和 ICMP_DLL。

 

 

      我的微博:http://weibo.com/zsxxsz

      acl 下載

      原文地址

      更多文章

      QQ 羣:242722074

相關文章
相關標籤/搜索