一笑逆袭 发表于 2012-5-30 10:51:07

求助:ACE中补充安装ACEXML出现问题

linux环境下,我安装的是ACE-5.5.tar.bz2。由于直接./configure安装不能成功,所以采用如下安装步骤:
设置了ACE_ROOT,LD_LIBRARY_PATH
进入$ACE_ROOT/ace/下,建立配置文件config.h,执行命令:#vi config.h,编辑下面内容:
#define ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 1
#define ACE_NO_INLINE1
#include "ace/config-linux.h"
进入$ACE_ROOT/ include/makeinclude/下,建立platform_macros.GNU文件,编辑文件内容如下:
include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
ssl=1
保存退出。
进入$ACE_ROOT/ace目录,执行make命令
到这里都是成功的,但是编译完成的库总没有关于ACEXML的
所以进入$ACE_ROOT/ACEXML目录,执行make命令
出现如下错误:
GNUmakefile: /home/diameter/ACE_wrappers/ACEXML/examples/SAXPrint/GNUmakefile.SAXPrint MAKEFLAGS=w

g++ -fvisibility=hidden -fvisibility-inlines-hidden -W -Wall -Wpointer-arith -O3 -g -pipe    -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE   -I/home/diameter/ACE_wrappers-DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -I../../.. -I../../../ACEXML/common-Wl,-E -L/home/diameter/ACE_wrappers/ace -L./-L. -L../../../lib -o SAXPrint .obj/Print_Handler.o .obj/SAXPrint_Handler.o .obj/main.o -lACEXML_Parser -lACEXML -lACE-ldl -lpthread -lrt
../../../lib/libACEXML_Parser.so: undefined reference to `ACE_Obstack_T<char>::grow(char)'
../../../lib/libACEXML_Parser.so: undefined reference to `ACE_Obstack_T<char>::freeze()'
../../../lib/libACEXML_Parser.so: undefined reference to `ACE_Obstack_T<char>::ACE_Obstack_T(unsigned int, ACE_Allocator*)'
../../../lib/libACEXML_Parser.so: undefined reference to `ACE_Obstack_T<char>::release()'
../../../lib/libACEXML_Parser.so: undefined reference to `ACE_Obstack_T<char>::unwind(void*)'
../../../lib/libACEXML_Parser.so: undefined reference to `ACE_Obstack_T<char>::~ACE_Obstack_T()'
网上查了帖子说是在config.h加上
#define ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 1
但是这个方法对我没有用,折腾好久了,不知怎样解决。
希望知道的帮我解解惑,不知道的帮忙顶顶,万谢!!!!

winston 发表于 2012-5-30 13:35:56

这是缺了library。应该还是编译配置的问题。
不过我不用ACEXML,无法给你更多提示。
页: [1]
查看完整版本: 求助:ACE中补充安装ACEXML出现问题