Error Listening To Socket - MOOS-IvP won't run on Beaglebone Black

I am attempting to run MOOS-IvP on a Beaglebone Black

On attempting to run the MOOS database it continuously throws the exception

“Exception Thrown in listen loop: Error Listening To Socket. Operation not supported”

This software runs on a Raspberry Pi

Any ideas what might be the issue?

I managed to get it to work in single threaded mode. Has any one had any issues with threads with the BBB?

Ok so after much debugging I have found that when the Listen thread socket is started it starts as a UDP socket (determined using lsof) when it should be a TCP socket. What would cause this?

I have found the problem and fixed it.

When the socket is created it needs to be TCP. However when getprotobyname(_sName) is called in the XPCGetProtocol class to lookup the correct protocol number in /etc/protocols it returns the value of the previous time it was called, which was when a UDP socket was setup.

To fix it I simply called the function twice, the second time it returns the correct value.

I am not sure why it would return incorrect the first time but this works!

I had the same problem (I am running MOOS-IvP on Ubuntu 14.04 on a BeagleBone Black), but after adding a second call to the getprotobyname function and recompiling, I still receive the error. Using lsof does in fact show that it is trying to use UDP instead of TCP. The error is also intermittent, sometimes MOOS runs fine, sometimes it only throws the error and it seems to be more likely to have problems when running over SSH vs direct console. Have you figured out anything else that might cause this?