Win7下编译32位、64位libiconv与libxml2

一、编译libiconv

1、下载libiconv的源文件,下载链接是https://ftp.gnu.org/pub/gnu/libiconv/,在此使用的是最新版本libiconv-1.15

2、解压后新建一个vs2010空的控制台dll程序,命名为libiconv

3、从下载的libiconv-1.15\lib\里拷贝relocatable.h、relocatable.c、iconv.c文件到新创建的libiconv程序中的libiconv文件夹下

4、拷贝libiconv-1.15\libcharset\lib\localcharset.c到libiconv程序中的libiconv文件夹下

5、拷贝libiconv-1.15\libcharset\include\localcharset.h.build.in到libiconv程序中的libiconv文件夹下并重命名为localcharset.h

6、拷贝libiconv-1.15\windows\libiconv.rc到libiconv程序中的libiconv文件夹

7、在libiconv中新建文件夹include

8、拷贝libiconv-1.15\include\iconv.h.build.in到libiconv程序中的include文件夹下并重命名为iconv.h

9、拷贝libiconv-1.15\lib目录下的所有*.h and *.def文件到libiconv程序中的include文件夹下

注:将以上*.c结尾的文件重命名为*.cpp

10、在vs程序中添加以下现有项到项目中:

11、设置项目属性,附加包含目录:../include

12、修改以下文件内容

libiconv.rc文件中添加以下红框选中代码:

iconv.cpp文件中修改如下地方,将ICONV_CONST改成const:

localcharset.cpp中修改如下,注释红色区域代码:

localcharset.h文件中修改如下,注释红色框代码,增加黄色框代码:

config.h文件中修改如下,注释红色框内容:

iconv.h文件中修改如下,注释红色框内容,增加黄色框内容:

13、编译生成即可,32位与64位步骤相同

二、编译libxml2

1、下载libxml2源文件,下载路径是http://xmlsoft.org/sources/,在此使用的版本是libxml2-sources-2.9.7.tar.gz

2、解压文件到目录F:\libxml2-2.9.7

3、在F盘新建文件夹xml,并在该文件夹下创建include和lib文件,将iconv.h、libcharset.h、localcharset.h文件放入include文件夹下,iconv.lib(如果上面libiconv生成出来的lib文件命名不是这样,需要修改,否则生成libxml2时会提示找不到iconv.lib文件)文件放入lib文件夹下

4、打开Visual Studio 2010命令提示程序

5、将工作目录cd到F:\libxml2-2.9.7\win32

6、输入cscript configure.js prefix=F:\xml include=F:\xml\include lib=F:\xml\lib debug=no

这里面prefix是存放libxml2生成的文件存放路径,include是包含文件(步骤3中存放头文件)路径,lib是库文件(步骤3中存放iconv.lib)路径,debug为yes是生成debug调试版本,为no是生成release版本

7、nmake /f Makefile.msvc

8、nmake /f Makefile.msvc install

完成后即可在F:\xml\bin中找到生成的库与可执行程序

以上是生成32位版本库,如果想要生成64位版本库,需在步骤4与步骤5中间插一句代码call bin\amd\64\vcvars64.bat,将开发环境设置成64位的

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值