求解
typedef ACE_Map_Manager<ACE_Tstring,ACE_INET_Addr,MAP_MUTEX> ROUTING_MAP;typedef ACE_Map_Iterator<ACE_Tstring,ACE_INET_Addr,MAP_MUTEX> ROUTING_MAP_ITERATOR;
typedef ACE_Map_Entry<ACE_Tstring,ACE_INET_Addr> ROUTING_MAP_ENTRY;
为什么编译能通过,但是运行时候就有错误。
./gateway: symbol lookup error: ./gateway: undefined symbol: _ZN6ACE_OS11fast_memcpyEPvPKvj
我是在gateway的例子上添加的,一运行就提示上面的错误,求高手指点。我感觉是和ACE_Service_Object有关,但是我不是懂这个动态或则静态配置。
我换成下面的就没有问题了:
typedef ACE_Map_Manager<std::string,ACE_INET_Addr,MAP_MUTEX> ROUTING_MAP;
typedef ACE_Map_Iterator<std::string,ACE_INET_Addr,MAP_MUTEX> ROUTING_MAP_ITERATOR;
typedef ACE_Map_Entry<std::string,ACE_INET_Addr> ROUTING_MAP_ENTRY; 缺少对应的dll文件,运行时候无法装载、定位 ldd看一下指向的ACE*.so的位置是否正确
页:
[1]