I'm not sure what caused it either, and can't easily investigate at the moment, because I don't have a machine or VM capable of easily compiling NOX-Classic within easy reach. But you can try the first things I'd do anyway, which are to pull down a clean clone and try building, and then try pulling down a clean clone and swapping out messengers and try building that. Something like:
git clone http://noxrepo.org/git/nox-classic test1 cd test1 ./boot.sh mkdir build ; cd build ../configure make See what happens there. If it builds correctly: cd ../.. git clone http://noxrepo.org/git/nox-classic test2 cd test2/src/nox/coreapps rm -rf messenger wget "http://www.noxathome.org/x/Murphy/messenger/messenger.zip" unzip messenger.zip cd ../../.. ./boot.sh mkdir build ; cd build ../configure make And see what happens there. Good luck. -- Murphy On Aug 6, 2012, at 3:55 AM, Neha Jatav wrote: > Hi Murphy, > > Thanks for the prompt reply. I am not sure what caused this error in make:- > > make[5]: Entering directory `/home/neha/nox_bak/build/src/builtin' > CXX deployer.lo > CXX component.lo > CXX dso-deployer.lo > CXX event-dispatcher-component.lo > CXX kernel.lo > CXX nox.lo > ../../../src/builtin/nox.cc: In member function 'void > vigil::nox::Handshake_fsm::handle_vendor(std::auto_ptr<vigil::Buffer>)': > ../../../src/builtin/nox.cc:1037:20: error: expected '(' before 'ntohs' > ../../../src/builtin/nox.cc:1441:1: error: expected '}' at end of input > ../../../src/builtin/nox.cc:1441:1: error: expected '}' at end of input > ../../../src/builtin/nox.cc:1441:1: error: expected '}' at end of input > ../../../src/builtin/nox.cc: At global scope: > ../../../src/builtin/nox.cc:1441:1: error: expected '}' at end of input > ../../../src/builtin/nox.cc:1441:1: error: expected '}' at end of input > In file included from ../../../src/include/classifier.hh:26:0, > from ../../../src/nox/packet-classifier.hh:21, > from ../../../src/nox/nox.hh:46, > from ../../../src/builtin/nox.cc:19: > ../../../src/include/cnode.hh: In instantiation of 'const uint32_t > vigil::Cnode<vigil::Packet_expr, boost::function<void(const vigil::Event&)> > >::MASKS [32]': > ../../../src/include/cnode.hh:254:5: required from 'void vigil::Cnode<Expr, > Action>::add_rule(vigil::Rule<Expr, Action>* const&, uint32_t, bool) [with > Expr = vigil::Packet_expr; Action = boost::function<void(const > vigil::Event&)>; vigil::Cnode<Expr, Action>::Rule_ptr = > vigil::Rule<vigil::Packet_expr, boost::function<void(const vigil::Event&)> > >*; uint32_t = unsigned int]' > ../../../src/include/classifier.hh:215:13: required from 'uint32_t > vigil::Classifier<Expr, Action>::add_rule(uint32_t, const Expr&, const > Action&) [with Expr = vigil::Packet_expr; Action = boost::function<void(const > vigil::Event&)>; uint32_t = unsigned int]' > ../../../src/builtin/nox.cc:757:56: required from here > ../../../src/include/cnode.hh:93:16: warning: narrowing conversion of > '-2147483648' from 'int' to 'const uint32_t {aka const unsigned int}' inside > { } is ill-formed in C++11 [-Wnarrowing] > make[5]: *** [nox.lo] Error 1 > make[5]: Leaving directory `/home/neha/nox_bak/build/src/builtin' > make[4]: *** [all] Error 2 > make[4]: Leaving directory `/home/neha/nox_bak/build/src/builtin' > make[3]: *** [all-recursive] Error 1 > make[3]: Leaving directory `/home/neha/nox_bak/build/src' > make[2]: *** [all] Error 2 > make[2]: Leaving directory `/home/neha/nox_bak/build/src' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/neha/nox_bak/build' > make: *** [all] Error 2 > > Can you please help? This error never came when I compiled several time > before. > > Regards, > Neha > > On Mon, Aug 6, 2012 at 1:36 PM, Murphy McCauley <[email protected]> > wrote: > On Aug 6, 2012, at 12:29 AM, Neha Jatav wrote: > > I was trying to run the messenger code (from the link provided by you). I > > copied the folder to the following location: > > nox/src/nox/coreapps/ > > > > The location nox/build/src/nox/coreapps/messenger looks like this, which I > > left as it was: > ... > > [neha@doorsingdog-dx src]$ ./nox_core -v -i ptcp: pymessenger > > 00001|nox|INFO:Starting nox_core > > (/home/neha/nox_bak/build/src/.libs/lt-nox_core) > > 00002|dso-deployer|ERR:Component 'messenger_core' declared multiple times. > > 00003|dso-deployer|ERR:Component 'messenger' declared multiple times. > > 00004|dso-deployer|ERR:Component 'jsonmessenger' declared multiple times. > > 00005|pyrt|ERR:Component 'pyjsonmessenger' declared multiple times. > > 00006|pyrt|ERR:Component 'pymessenger' declared multiple times. > ... > > You shouldn't be getting any of these "declared multiple times" messages. If > I recall correctly, what I posted was a complete replacement for the > messenger directory. You should remove everything in the old one and replace > it with the new one. You might also want to create a new build tree (e.g., > mkdir build ; ../configure)... maybe there's something hanging out in there > which is causing this. > > > The existing messenger.py file was different from that provided by you. > > The code that used to be in messenger.py was a small library for external > programs to use to connect to the (non-JSON) messenger. The name continually > confused people. It has been renamed to messenger_client.py. The new > messenger.py is actually what people always expected it to be -- a module you > import to implement messenger services within NOX. It's the counterpart to > jsonmessenger.py, which is used to implement JSON-messenger services within > NOX (so it's apparently the one you want to use on the NOX side). > > > I am confused with what (code files) to place where. > > As stated above, they should all go in the messenger directory instead of > what used to be there. > > > Also, could you please give me an example messaging code that sends a json > > message to the controller (so that I get an idea of how to create a sample > > sender)? > > There's some info about using it in the mailing list archives. For example: > https://groups.google.com/d/topic/nox_dev/nbHEFiYAFrk/discussion > https://groups.google.com/d/topic/nox_dev/K3rB8a_dKaI/discussion > > I think it's mostly about implementing the backends in NOX, but there might > be some stuff about the client side back in the archive too. Some of the > stuff about implementing normal messenger stuff applies to the JSON messenger > too. You might check the doxygen. You also might find it useful to take a > look at the code for the GUI, as it uses the JSON messenger to communicate > with NOX. For the most part, you just open a socket and send a JSON string > through it. > > > Good luck. > > -- Murphy >
