注:由於如今 acl_cpp 已經合併進 acl 項目中,本文僅是介紹了老版本的 acl_cpp 的編譯過程,新版本的介紹及編譯請參考:acl 框架庫簡介。框架
acl_cpp 是基於 acl 爲基礎開發的,目前 acl_cpp 象 acl 同樣支持 Linux 和 Windows 平臺。有關 acl 的編譯,請參考 《acl 的編譯與使用 》,本文主要描述 acl_cpp 的編譯與使用。spa
1、Linux 平臺.net
acl_cpp 庫編譯後的靜態庫名爲:lib_acl_cpp.ablog
一、編譯 lib_acl_cpp.a 庫開發
進入 acl_cpp 目錄,直接運行命令:make 即可以在 lib/ 目錄下生成 lib_acl_cpp.a 庫,頭文件在 include/ 目錄下。get
二、使用 lib_acl_cpp.a 庫it
用戶在使用 lib_acl_cpp.a 庫時,須要修改本身的 Makefile 文件,增長編譯選項以下:微博
-I 指定 acl_cpp/include 頭文件目錄 ;編譯
-L 指定 lib_acl_cpp.a 所在目錄class
-l_acl_cpp
由於 lib_acl_cpp.a 基於 lib_acl.a 和 lib_protocol.a,因此在連接您的程序時還須要添加這兩個依賴庫的位置,如:
-L {path_to_protocol} -l_protocol -L {path_to_acl} -l_acl -L{path_to_acl_cpp} -l_acl_cpp
另外,用戶須要在本身的源程序或頭文件中包含頭文件:#include "acl_cpp/lib_acl.hpp"
2、Windows 平臺
Win32 平臺下,靜態庫名爲:lib_acl_cpp.lib
一、編譯 lib_acl_cpp.lib/lib_acl_cpp.dll 庫
目前能夠用 vc2003 或 vc2010 分別打開工程文件:acl_cpp_vc2003.sln 或 acl_cpp_vc2010.sln 來編譯 win32 下的靜態庫或動態庫。
二、使用 lib_acl_cpp.lib/lib_acl_cpp.dll 庫
在您的工程中須要指定 acl_cpp/include 的頭文件路徑,同時在連接時須要指定庫的位置,此外,還須要在您的源程序或頭文件中包括頭文件 "lib_acl.hpp";
另外,還得把 lib_acl_vc2003.lib 和 lib_protocol_vc2003.lib 拷貝到您的工程目錄中;若是是鏈接動態庫,則須要將 lib_acl.dll, lib_protocol.dll, lib_acl_cpp_vc2003_dll.dll 動態庫拷貝至您的可執行程序折運行目錄。
若是您對編譯和使用 acl_cpp 的庫有疑問,請參考 acl_cpp/samples/ 下的示例,有完整的 Makefile 文件或 win32 下的工程文件。
原文件地址:http://zsxxsz.iteye.com/blog/1535688
更多文章: http://zsxxsz.iteye.com/
QQ 羣:242722074