vs2010编译OVALInterpreter
来源:互联网 发布:淘宝客服处理技巧 编辑:程序博客网 时间:2024/05/21 22:43
win7编译OVALInterpreter遇到的主要问题是编译它所用到的第三方库,首先是pcre,这个没有遇到什么问题,略过,其次是libgcrypt,这是一个GNU环境下的软件包,在windows下编译需要使用mingw,由于此前从未使用过,所以遇到了不少麻烦,
1,下载mingw,位于sourceforge上,只提供在线安装包,网速差的时候一个接着一个的Download Error,于是找来离线完整安装包
2,libgcrypt依赖libgpg-error, 于是下载了libgpg-error-1.10 和libgcrypt-1.5.0 (只这两个版本编译成功)
3,把libgpg-error复制到mingw 的home目录,并进入该目录,执行./autogen.sh,之后按照提示一步一步输入指令
4,make 的时候停留在protomo:XXXXXXiso...utf8这一行,几次重试都是同样的结果,无法继续,后来在google上多番查找,问题出在iconv.exe这个文件上,找到了两个解决方法,patch文件和修改protomo文件,patch文件下回来之后不知道怎么用,于是修改protomo文件,把 iconv的--silent参数改成-s,效果是一样的,但是--silent将导致问题,这好像是一个已知的bug,
5,进入libgcrypt-1.5.0文件夹,运行./autogen.sh 之后 make && make install.libgcrypt的文档上说的是./autogen.sh --build-w32指令,它的意思是在gnu环境下编译win32平台的目标文件,由于我是在win7下编译,所以不需要该参数
6,make install 的时间相当漫长
libgcrypt编译完之后是xerces,xerces的编译没什么问题,编译完这些库之后,在OVALInterprete这设置 include目录和lib目录,对于xerces还需要在链接选器的常规项中设置附加库目录,和刚才的lib一样的路径,在链接器的输入选项中添加xerces生成的lib文件名。开始编译,编译的过程中没有出现问题,但在链接的时候却出现了43个错误,典型的链接错误提示:无法找到外部符号:“"__declspec(dllimport) public: static void __cdecl xerces::................”,但是xerces明明已经设置好了,在这里纠结了好久,网上也没发现什么解决方法,该死的baidu 查不到有用信息,google又连接不正常,于是去玩了一会游戏,等待google恢复正常。google之后发现问题可能出在字符集设置上,OVALInterprete和xerces都是未设置,都改成多字节之后重新编译,问题依旧,在继续查找,发现是wchar_t的问题,OVALInterprete项目将wchar_t视为内置类型,而xerces没有,都改成不视为内置类型之后终于编译成功。
- vs2010编译OVALInterpreter
- vs2010静态编译编译qt4
- VS2010编译驱动设置
- vs2010编译boost
- 用VS2010编译rotor
- VS2010配置编译驱动
- vs2010编译金山代码
- VS2010 log4cxx 编译
- vs2010编译参数设置
- vs2010编译提示错误
- 使用VS2010编译QT
- 命令行编译WPF--VS2010
- vs2010编译qt
- VS2010 编译 STLPORT
- VS2010编译TightVNC2.0.4
- vs2010编译qt4.8
- vs2010编译vp8
- vs2010编译qbittorrent
- [proc 系统] /proc/sys/kernel
- 大师级写的C# 中的委托和事件 简明扼要
- java 泛型
- java类修饰符整合
- 虚拟文件系统VFS
- vs2010编译OVALInterpreter
- gcc预定义宏
- 七夕·殇
- struts2 转换器
- 策略模式
- .pro->.ts->.qm
- 爱是永久相思情
- Json树形结构数据转Java对象并存储到数据库的实现-超简单的JSON复杂数据处理
- 来亦匆匆,去亦匆匆