Boost network not in standard boost install - c++

Have recently become a great boost fan !!
But sometime components seem to be hidden.
eg I see example code on this site with:
#include <boost/network/uri.hpp>
etc
But my 1.55 boost install does not have a network folder.
What am I missing here?
Thanks in advance for any help

You are missing the fact that cpp-netlib is not an accepted Boost C++ Library (current Boost C++ Libraries). And further it's not even in the review schedule. So it's not going to be a Boost C++ Library for some time.

For those who may come down the same path ...
boost/network is not part of the standard boost release.
It is a candidate which may at some time become part of the boost distribution.
Sources/Docs etc for boost/network can be found at:
http://cpp-netlib.org/
Acknowledgement to GrafikRobot for pointing the way.

Related

Brew warning: dependency was built with a different C++ standard library

I recently upgraded my homebrew-installed packages, and after "Trinity-rnaseq" upgraded from 2.4 to 2.5, I received the following warning"
Warning: homebrew/science/trinity dependency boost was built with a different C++ standard library (libc++ from clang). This may cause problems at runtime.
I'm somewhat new to homebrew as a whole, and was wondering what the safest way to fix the boost dependency would be, if it is even necessary.
Thank you!
Rebuild boost and then anything that depends on boost and then your project. And yes, if any of that uses boost as part of a public interface it can easily be a problem.

how to upgrade c++ builder 2010 boost libs

As far as I know ERS C++ Builder 2010 comes with Boost libraries. During installation it will also install Boost libraries.
As new libraries will be realeased or modified(optimized), it gets me to upgrade to the latest version.
So i'm asking can i do this by replacing boost directory?
It's not as simple as updating the $(CG_BOOST_ROOT) directory with a new boost.
See this question previously asked on SO.
Someone could put the effort in, and it could be possible to run many of the latest boost libraries with bcc. (and hopefully submit those changes back to boost) That hasn't really happened yet.
However, even with a Herculean effort there are some constructs used by boost that bcc just doesn't handle yet, so there will be some boost libraries that won't be usable by bcc.

Binaries for cpp-netlib

I would like to know if it is possible to get the binaries for the static library for windows (x86 and x64) now present in cpp-netlib for the version 0.9.1?
Frankly it is a pain to compile this on windows for me.
Thanks
New version's of cpp-netlib now do require building. I have answered how to build it on here
It seems that cpp-netlib is a header-only library, although it relies on some boost compiled libraries, such as Boost.System, Boost.Date_time, and Boost.Regex. You can easily find boost pre-compiled libraries all over the Internet. You will also need the boost headers to be in your build path as well. Even though cpp-netlib says that Boost 1.41.0 will do, in actuality, version 0.9.1 requires Boost version 1.46.0 or later (just grab the latest which is 1.47.0).
You could also try defining BOOST_NETWORK_NO_LIB which should help out.

Creating a multithreading application in vc6 with boost library?

Is it possible to create a multithreading application in VC6 with boost library?
If it is possible, what are some relevant tutorials.
Yes, I have done this successfully, but with Boost v1.30.0. So if you have trouble with the latest versions of the Boost libraries, you might want to go back a year or five. I recall I started getting all sorts of internal compiler errors, et al., when trying to upgrade Boost -- so I didn't, but rather went on using v1.30.0 until I was able to upgrade Visual C++ as well. Even the old versions of Boost are very stable and useful, they just have less features.
http://www.boost.org/doc/libs/1_37_0/doc/html/thread.html
A quick google for "boost thread example" turns up lots of good hits.
The Boost.Thread library provides thead creation and manipulation facilities. Read the boost documentation (link was provided in litb's answer). It also provides synchronization bojects (mutexs). Boost is cross platform and is compatible with VS6.
As for the rest of the boost libraries - they are usually thread safe, but read the documentation of each particular library of details.

C++ std::tr2 for VS2005

Is Boost the only way for VS2005 users experience TR2? Also is there a idiot proof way of downloading only the TR2 related packages?
I was looking at the boost installer provided by BoostPro Consulting. If I select the options for all the threading options with all the packages for MSVC8 it requires 1.1GB. While I am not short of space, it seems ridiculous that a library needs over a gigabyte of space and it takes BPC a long time to catch up with the current release.
What packages do I need? I'm really only interested in those that comprise std::tr2 and can find that out by comparing those on offer to those in from the TR2 report and selecting those from the list but even then it isn't clear what is needed and the fact that it is a version behind annoys me.
I know from previous encounters with Boost (1.33.1) that self compiling is a miserable experience: A lot of time wasted to get it started and then a hoard of errors passes across your screen faster than you can read, so what you are left with is an uneasy feeling that something is broken but you don't quite know what.
I've never had these problems with any Apache library but that is another rant...
I believe you're actually referring to TR1, rather than TR2. The call for proposals for TR2 is open, but don't expect to see much movement until the new C++ standard is out. Also, although boost is a provider of an implementation of TR1, dinkumware and the GNU FSF are other providers - on VC2005 boost is probably the easiest way to access this functionality.
The libraries from boost which are likely to be of most importance are
reference
smart pointer
bind
type traits
array
regular expressions
The documentation for building boost has been gradually improving for the last few releases, the current getting started guide is quite detailed. smart pointer and bind, should work from header files, and IMO, these are the most useful elements of TR1.
Part of the beauty of Boost is that all code is in header files. They have to for template reasons. So probably downloading the code and including it in your project will work. There are some libraries in Boost that do need compiling, but as long as you don't need those...
The libraries I am most interested in from TR1/TR2 are threads and the related atomics.
Compiling the boost libraries for yourself is actually quite simple, if not that well documented. The documentation is in the jamroot file. Run bjam --help in the boost root directory for a detailed list of options. As an example I used the following command line to build my current set up with boost 1.36.0:
bjam --build-type=complete --toolset=msvc --build-dir=c:\boost\build install
It ran for about a half hour on my machine and put the resulting files into c:\boost