Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is there way to compile bond without boost? #643

Closed
usvoyager opened this issue Oct 13, 2017 · 6 comments
Closed

Is there way to compile bond without boost? #643

usvoyager opened this issue Oct 13, 2017 · 6 comments
Labels

Comments

@usvoyager
Copy link
Member

Anyway we can build bon sources without boost?

@chwarr
Copy link
Member

chwarr commented Oct 13, 2017

No: we rely on Boost to abstract compiler, platform, and C++ standard differences. We also use things like boost:mpl, boost::variant, and boost::optional. (std::variant and std::optional are C++17, while Bond currently only requires C++11. That's our minimum C++ version for the foreseeable future.)

Only Boost headers are needed, however, for using Bond serialization/deserialization. On Windows, by default, when Boost is compiled it automatically tried to link with its libraries. This can be suppressed by defining BOOST_ALL_NO_LIB when compiling.

If you want to build and run the tests, you'll need some of the Boost libraries as well.

Some more details: #62

@TPSResearch
Copy link

sounds like if you got bond up-to-date with the latest Microsoft compiler you could be on the road to ridding yourself of the massive boost dependency.

@chwarr
Copy link
Member

chwarr commented Oct 16, 2017

Possibly. Bond already works with MSVC 2017. It's less about Bond working with the latest and greatest and more about what the consumers of Bond are ready and able to use. For now, that includes older C++11 only compilers like MSVC 2013, Clang 3.x, and GCC 4.x.

For my additional information, can you list/point to the problems you're having with Boost? This will help us make a more informed decision when we're in a position to re-evaluate (likely in a year or two).

@TPSResearch
Copy link

@chwarr We don't have a problem with Boost, per se. A number of years ago we examined our use of it and found that we only used a few features which were pretty easy to work around. Given that boost is half a Gig in size it was decided to remove our dependency upon it. Today we make the standard library the first place to go before using features from open source libraries.

@chwarr
Copy link
Member

chwarr commented Oct 17, 2017

Thanks, @TPSResearch. Makes sense.
@usvoyager: if your question has been answered, can we close this issue?

@chwarr
Copy link
Member

chwarr commented Oct 20, 2017

Having heard nothing more, closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants