Windows環境下libxml2庫的使用小結

2021-09-06 06:38:52 字數 1207 閱讀 2769

libxml2中預設的內碼是utf-8,所有使用libxml2進行處理的xml檔案,必須首先顯式或者預設的轉換為utf-8編碼才能被處理。

要在xml中使用中文,就必須能夠在utf-8和gb2312內碼(較常用的一種簡體中文編碼)之間進行轉換。libxml2提供了預設的內碼轉換機制,並且在libxml2的tutorial中有乙個例子,事實證明這個例子並不適合用來轉換中文。所以需要我們顯式的使用iconv來進行內碼轉換,libxml2本身也是iconv使用進行轉換的。iconv是乙個專門用來進行編碼轉換的庫,基本上支援目前所有常用的編碼。它是glibc庫的乙個部分,常常被用於unix系統中。當然,在windows下面使用也沒有任何問題。

將libiconv-1.9.2-1-lib.zip解壓,將其中的iconv.h放入c:\opt\include目錄中,將其中的libiconv.lib放入c:\opt\lib中,並改名為iconv.lib.(沒有opt目錄就新建乙個)。

解壓libxml2-2.7.8.tar.gz檔案到c盤根目錄,在c:\libxml2-2.7.8\libxml2-2.7.8\win32目錄中存放了多個windows平台編譯器的makefile檔案,我們使用vs2008,所以待會會用makefile.msvc檔案。

1.進入visual studio 2008 command prompt;

2.cd c:\libxml2-2.7.8\libxml2-2.7.8\win32

3.輸入cscript configure.js compiler=msvc prefix=c:\opt  include=c:\opt\include lib=c:\opt\lib debug=yes,回車執行。

4.最後使用nmake命令進行編譯,輸入nmake /f makefile.msvc並回車。

此時會出現一下錯誤提示,

makefile.msvc(465) : fatal error u1020: end-of-file found before next directive

stop.

網上找了下原因,原來是makefile.msvc中存在錯誤。

+!if "$(with_icu)" == "1"

+libs = $(libs) icu.lib

+!endif

將以上三行前面的+號都刪掉,重新執行nmake即可。

在當前win32目錄中生成了乙個bin.msvc目錄,其中就有開發需要的libxml2.lib和libxml2.dll檔案。

CVS使用 windows環境下

經驗 1,wincvs中執行checkout動作的單位是 module 即匯入cvs倉庫的專案名稱。import時有設定,要記好。2,cvsroot pserver username password localhost 倉庫名 3,初始化乙個cvs倉庫,並將乙個現有專案匯入到cvs中 1 通過cv...

Windows環境下安裝Apache PHP

3.2 php相關配置。複製 d php5 php.ini recommended 重新命名為 php.ini,該檔案為php的配置檔案。3.3 新增 d php5 和 d php5 ext到系統環境變數。3.4 為了可以使用mysql我們還需要複製以下檔案到 c windows system32目...

windows環境下Nginx配置

作為乙個前端,在工作的時候肯定會遇到這樣的實際問題,就是要讓別人看到跑在你自己機子上localhost的頁面。這個時候就需要靠apache和iis幫忙了,當然現在有許多整合好的mysql和apache等框架,例如我自己本來就是使用很簡單的speedamp,小白式操作就ok了。但是之前一直久聞ngin...