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
> 

Reply via email to