I can't guess without knowing more about what has been changed in the code and 
meta file, so I'm grasping at straws here.

One thing I might suggest is rebuilding your component and looking for 
compile/link warnings.  Or dump the shared object and see if there's an 
exported symbol for the factory function (maybe it has the wrong name somehow?).

-- Murphy

On Apr 19, 2012, at 4:29 AM, Sander Vrijders wrote:

> The default discovery application is no longer present in the directory.
> I actually am a master student and am developing this for my thesis.
> The new discovery application (written in C++) was supplied to me by my 
> thesis supervisor.
> If I would run this application standalone it would work, yet when I 
> integrate it with the tracker, it doesn't anymore.
> 
> Kind regards
> Sander
> 
> 2012/4/19 Murphy McCauley <[email protected]>
> I suspect it's because NOX already comes with a component named "discovery".
> Try removing or changing the name of the existing one by adjusting its meta 
> file (netapps/discovery/meta.json), or (better yet) renaming yours.
> 
> -- Murphy
> 
> On Apr 19, 2012, at 4:18 AM, Sander Vrijders wrote:
> 
> > Hi
> >
> > I'm developing an application for NOX.
> > The code consists of multiple files, and is a topology discovery merged 
> > with a bittorrent tracker.
> > However, when I run the application (everything compiles fine), I get the 
> > following error:
> >
> > 'discovery' ran into an error:
> >                         discovery does not implement 
> > discovery_get_factory() nor get_factory() function
> >
> > I have added
> > REGISTER_COMPONENT(vigil::container::Simple_component_factory<Discovery>, 
> > Discovery);
> > to the bottom of my source file discovery.cc, if I add it higher up in the 
> > source file, or in another source file,
> > I mostly get a compiler error that says: get_factory is already defined.
> > What am I missing here?
> >
> > Kind regards
> > Sander
> 
> 

Reply via email to