I'm looking at libraries to help build a scalable tcp/ip server, and Boost::ASIO looks pretty nice to make async socket i/o work homogeneously across platforms (We need to support at least OSX, Linux x86, and Windows, probably Solaris, maybe HP-UX & AIX).
Management is dead-set against using Boost in our product, mostly due to it being 'bloated', and due to issues we've had in the past with conflicts, as our code gets statically linked with customer code (which may also be using boost, possibly not the same version).
The Asio page claims that it can be used without boost, although it's pretty vague, as later it also says "When using C++11 ... Asio can be used independently of Boost ...", which seems to imply it won't work on a C++03 compiler. I was thinking I could simply do a '#define asio proprietary_asio' before including the header to avoid the symbol clash issue.
I just tested VS2013 on my local machine, and it compiled; Does anyone know which particular C++11 features are needed? I need to (at the very least) support VS2012/2013 on windows, gcc 4.4 (maybe 4.3) on linux, and XCode 5.1 on OSX.
I'm guessing the problem is going to be with the old version of GCC...