4 ms·
> but the boost dependency is an immediate "oh hell no". So forgive me because I'm pretty new to C++ (well I knew it semi decently 12 years ago; trying to rele
by BinaryIdiot 12y ago
> but the boost dependency is an immediate "oh hell no".
So forgive me because I'm pretty new to C++ (well I knew it semi decently 12 years ago; trying to relearn now) but most of the C++ developers I know love boost especially for asio since most tcp libs seem to be very old. What is the reason it makes you go "oh hell no"?
- taf2 12y ago10 years ago for me it was because it was really hard to get it to compile. I might get it setup on my cygwin install or my linux but have trouble compiling it on both. I was able to get mozilla compiling faster/easier then boost... It's probably improved a lot since then, but back then if you had asked me to use boost I'd be rather upset as well... I think now days at least on linux there are packages for boost so it's not bad at all and also homebrew for mac so that's exciting.
- mlvljr 12y agoIIRC was no prob with MinGW 7-8 years ago, btw (and no Cygwin weirdness) :)
- angersock 12y agoIf you don't care about speed, Berkeley sockets (bind, listen, accept, etc.) are just fine and very easy to deal with. If you do care about speed, you should be banging against the operating system's provided tools anyways (IOCP on Windows, kqueue on BSD, epoll on Linux, etc.). If it's abstraction you care about, you shouldn't be doing networking with raw TCP anyways, and should just use zmq, nanomsg, or whatever, and not drag in the entire clown car of boost.
- BinaryIdiot 12y ago> not drag in the entire clown car of boost. As far as I can tell you can just import what you want and not have to bring in the entire boost library to use asio. Is that not correct?
- VikingCoder 12y agoThis weekend I tried to bring in boost format. I tried to bring in JUST format, but nope... exceptions, and config, and a bunch of other stuff... Fifteen libraries, maybe?
- plorkyeran 12y agoasio specifically is available in a standalone version that does not depend on any other boost libraries.
- zwily 12y agoBoost's asio has backends (reactors) for IOCP, kqueue, etc. The whole point is you write to one interface and take advantage of their performance.