xerces介绍

Xerces-C++ 的前身是 IBM 的 XML4C 项目。XML4C 和 XML4J 是两个并列的项目,而 XML4J 是 Xerces-J——Java 实现——的前身。IBM 将这两个项目的源代码让与 Apache 软件基金会(Apache Software Foundation),他们将其分别改名为 Xerces-C++ 和 Xerces-J。这两个项目是 Apache XML 组的核心项目(如果看到的是“Xerces-C”而不是“Xerces-C++”,也是同一个东西,因为这个项目一开始就是用 C(译者注:原文为C++)语言编写的)。

IBM 仍然在 Xerces-C++ 的基础上继续 XML4C 项目。从我所研究的版本来看,XML4C 与 Xerces-C++ 相比突出的好处是,它的默认安装对大量国际字符编码提供了更好的支持

xerces-J的资料,可以参考网址http://xerces.apache.org/xerces-j/

xerces-c的资料,可以参考网址http://xerces.apache.org/xerces-c/

下面我们在linux上安装xerces-c

下载,安装

从http://xerces.apache.org/xerces-c/上下载linuxe/unix下的源程序包xerces-c-current.tar.gz,上传到linux/unix主机,我用的是linux,顺序执行如下操作:

解压,命令:tar -xzvf xerces-c-current.tar.gz

添加环境变量,vi .bash_profile,在文件最后添加如下一行

export XERCESCROOT=$HOME/xerces-c-src_2_7_0

保存退出,行source .basu_profile使环境变量生效

进入源程序目录

cd $XERCESCROOT/src/xercesc

执行automake,生成configure脚本,运行如下命令

autoconf

运行configure脚本,并加入选项

./runConfigure -plinux -cgcc -xg++ -minmem -nsocket -tnative -rpthread

编译生成lib库,如果上面的runConfigure运行没有什么问题,执行gmake

gmake

如果gmake没有出现错误,说明一切ok

编译示例程序

cd $XERCESCROOT/samples

./runConfigure -plinux -cgcc -xg++

gmake

cd $XERCESCROOT/bin

运行示例程序DOMCount,提示如下错误信息

./DOMCount: error while loading shared libraries: libxerces-c.so.27: cannot open shared object file: No such file or directory

根据提示得信息判断,这是程序你在运行得时候找不到共享库libxerces-c.so.27,显然,这是程序在执行得过程中,搜索路径不正确,看看上面得配置,在编译完xercescroot之后,没有设置和库路径相关得环境变量,只要将xercescroot的库路径添加到一个环境变量,这样程序在执行过程中,就能找到libxerces-c.so.27库了;如果出现找不到共享库的情况都可以通过修改环境变量来解决问题,该环境变量名为:LD_LIBRARY_PATH

添加环境变量,vi .bash_profile,在最后添加一行,如下:

export LD_LIBRARY_PATH=$XERCESCROOT/lib

保存退出,执行source .bash_profile,使环境变量生效

以上的每一步都要正确无误地执行之后,才能进行下一步

xerces-c和tuxedo结合的问题

由于tuxedo8.1以上的版本都内置了xerces-c,这样我们在开发tuxedo服务,并且用xerces-c包做解析的时候,由于你开发用的xerces版本和tuxedo内嵌的版本可能会不一样,一些符号的定义就会不一样了,这样在编译的时候会报一些阿莫名奇妙的错误,这时应该避免使用tuxedo自带的xerces头文件,把$TUXEDIR/include下的xercesc目录改名就可以了.

如果你在开发的时候用的xerces-c版本和tuxedo自带的xerces-c版本相同,就不会有问题,如果版本不同就得注意.

我建议,最好你开发得时候用什么版本,在tuxedo结合编译运行的时候,也用这个版本.

知道xerces的版本号

从xerces的xerces/util/XercesVersion.hpp文件中,根据XERCES_VERSION_MAJOR,XERCES_VERSION_MINOR,XERCES_VERSION_REVISION可以得到主次,临时版本号。

早期的在Xerces_DLLVersionStr文件中定义

xerces-c++编程

后面我会进行补充.

如有问题,请留言,我们一起解决,总结经验.

xerces 64位 linux安装,linux安装xml开发包xerces-c相关推荐

  1. 【Linux\云服务器】CentOS 7.2 64位 可视化桌面的安装与卸载

    CentOS 7.2 可视化桌面的安装和卸载 终于开始写第一篇CSDN博客了,心情有点儿小激动,前两天,小D在阿里云出购买了一台学生优惠的ECS云服务器,购买之前并没有学习过任何有关Linux的知识, ...

  2. Linux(CentOS 7)(64位)系统下安装Pymol(1.8.6)

    PyMOL简介 PyMOL是一款生物大分子三维结构显示软件,其中"Py"是指此软件使用Python语言编写,"MOL"是指Molecule. PyMOL官网是h ...

  3. 判断oracle客户端是32还是64,64位-如何知道已安装的Oracle Client是32位还是64位?

    64位-如何知道已安装的Oracle Client是32位还是64位? 操作系统:Windows 2008 Server R2 Oracle客户端:11.2 非常感谢 8个解决方案 73 votes ...

  4. Centos 64位使用 yum 会安装两个相同软件包的解决方法

    Centos 64位使用 yum 会安装两个相同软件包的解决方法 - 后山一根葱 Centos 64位使用 yum 会安装两个相同软件包的解决方法 [Linux] post by 后山一根葱 / 20 ...

  5. CentOS7 64位下MySQL5.7安装与配置

    安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...

  6. 64位 Fedora 11 硬盘安装 配置全解

    64位 Fedora 11 硬盘安装 配置全解 转贴: http://www.ubuntuchina.com/viewthread.php?tid=7428&extra=page%3D1 硬盘 ...

  7. CentOS 7(64位)系统中安装AutoDockTools(MGLTools)

    硬件环境: 获取安装包: 官网:http://mgltools.scripps.edu/downloads点击打开链接 CentOS 7(64位)系统中安装MGLTools 获取root权限: 进入安 ...

  8. 64位win10系统无法安装.Net framework3.5的解决方法

    64位win10系统无法安装.Net framework3.5的解决方法 参考文章: (1)64位win10系统无法安装.Net framework3.5的解决方法 (2)https://www.cn ...

  9. python官网下载步骤64位-windows下载并安装Python的具体步骤

    安装Python 下载并安装Python Python 的官网是 www.python.org,我们可以直接从官网下载 Python.这里介绍在微软Windows和苹果Mac OS两种系统中的安装方式 ...

  10. matlab 2010 win7 64位,64位WIN7系统怎么安装Matlab2010

    MATLAB时非常有用的工具软件,工作学习都离不开开,那么64位WIN7系统怎么安装Matlab2010呢?小编为大家分享了64位WIN7系统安装Matlab2010的方法,下面大家跟着学习啦小编一起 ...

最新文章

  1. 任何网络都能山寨!新型黑盒对抗攻击可模拟未知网络进行攻击 | CVPR 2021
  2. 在Windows Mobile和Wince(Windows Embedded CE)下如何使用.NET Compact Framework开发进程管理程序...
  3. STM32开发 -- 4G模块开发详解(3)
  4. boost::mpl模块as_sequence的测试程序
  5. Redis的配置文件介绍
  6. java中的位移运算符_java中的移位运算符(, , )
  7. 4年,我终于成了千万富翁
  8. STM32之RTC例程
  9. TS Decorator
  10. HTML、CSS、JS对unicode字符的不同处理
  11. win10 计算机显示英文,电脑win10系统改了中文之后为何显示还是英文?
  12. [转]魔兽世界私服Trinity,从源码开始
  13. “智能语音助手”的竞品分析 —— 你好小悟小爱同学(4)
  14. Arnold渲染用炫云云渲染让我动画制作更轻松了
  15. IOS开发之相机、相册页面英文问题
  16. 鼠标双击成了查看属性是怎么回事?怎样解决?
  17. SHGetFileInfo 报错 异常 问题
  18. 谷歌地图-Google Map
  19. 如何修改视频分辨率?
  20. 如何快速学习一门编程语言

热门文章

  1. 德国铁路公司基于模型的铁路系统设计路线图 - 基于模型的系统开发在铁路部门的应用
  2. atitit 项目团队管理之道.docx
  3. Atitit 界面接口技术 cli gui nui cui管理 attilax总结 1. NUI 1 1.1. 问:什么是“自然用户界面”? 1 2. Cli到gui到nui CUI 2 2.1.
  4. Atitit.现实生活中最好使用的排序方法-----ati排序法总结
  5. 密码货币量化基金突然很热,但你可知道成功有多难?
  6. Julia: fill, repeat, repmat
  7. 树立榜样、褒奖开源领域领袖人物、杰出贡献人物
  8. java值传递人体自_请大家帮帮我这个初学者
  9. 【三维路径规划】基于matlab麻雀算法求解无人机三维路径规划问题【含Matlab源码 212期】
  10. 毕设题目:Matlab飞行器