CORBA C++:未定义对“CosNaming::NamingContext::_狭窄(CORBA::Object*)”的引用
我在以下故障中得到一个警告:CORBA C++:未定义对“CosNaming::NamingContext::_狭窄(CORBA::Object*)”的引用,c++,corba,C++,Corba,我在以下故障中得到一个警告: 'undefined reference to `CosNaming::NamingContext::_narrow(CORBA::Object*)' 下面是注册服务器的功能: void registerServer(CORBA::ORB_var obj){ CORBA::Object_var nsobj = obj->resolve_initial_references("NameService"); CosNaming::NamingContext_
'undefined reference to `CosNaming::NamingContext::_narrow(CORBA::Object*)'
下面是注册服务器的功能:
void registerServer(CORBA::ORB_var obj){
CORBA::Object_var nsobj = obj->resolve_initial_references("NameService");
CosNaming::NamingContext_var nc = CosNaming::NamingContext::_narrow (nsobj);
if (CORBA::is_nil (nc)) {
cerr << "Fehler: Konnte Naming Service nicht erreichen!" << endl;
exit (1);
}
// Naming Service fuer unser Konto einrichten
CosNaming::Name name;
name.length (1);
name[0].id = CORBA::string_dup ("VMS");
name[0].kind = CORBA::string_dup ("");
name[1].id = CORBA::string_dup("VMS_Context");
name[1].kind = CORBA::string_dup("");
cout << "VMS wird an Naming Service gebunden ... " << flush;
try{
CosNaming::NamingContext_var namingContext = nc->bind_new_context(name);
}
catch(CosNaming::NamingContext::AlreadyBound_catch &ex){
//darf ignoriert werden
}
cout << "done." << endl;
故障是由以下原因引起的:
CosNaming::NamingContext_var nc = CosNaming::NamingContext::_narrow (nsobj);
看起来你正在使用道之球。。。是这样吗?在这种情况下,看起来你需要检查你的路径,确保你有你的tao.lib等等。。。包括链接器可以找到它的地方。FIY,TAO作为C++ ORB支持OpenVMSET看起来像你使用的是道球…是这样吗?在这种情况下,看起来你需要检查你的路径,确保你有你的tao.lib等等。。。包括链接器可以找到的地方。FUI,TAO作为C++ ORB支持OpenVMS
CosNaming::NamingContext_var nc = CosNaming::NamingContext::_narrow (nsobj);