Could you please get rid of the Boost from the list of the dependencies?
There are not so many places in the code where it's actually necessary - C++11 should cover most of that.
I believe this way the library will be more attractive for the developers community and potential deployment.
There was a PR by @bhack about this. See: https://github.com/BVLC/caffe/pull/2537.
See https://github.com/BVLC/caffe/pull/2537#issuecomment-161238108. If you are interested in a pure c++11 solution Take a look at https://github.com/tiny-dnn/tiny-dnn
@akosenkov
Well for deployment, boost is header only, so not really an issue. And most Linux distributions already deliver the right boost packages.
Given that the Python frontend heavily relies on Boost is also a reason not to get rid of it.
The problematic aspect of the Boost dependency is that Caffe exposes Boost as part of its public API, instead of just being an internal implementation detail. This makes code using Caffe also depend on Boost. I'm currently integrating Caffe into a fairly large code base, and are facing problems related to Boost header version mismatches between Caffe and the rest of the code base. These types of problems are making Caffe adoption on Windows a hassle.
Could it be possible to revisit this issue of replacing some/most of Boost with C++11 now?
C++11 is widely supported on most platforms now. My impression is that the subset of C++11 used by Caffe have been supported GCC since 4.8.1 (May 2013), clang since 3.3 (June 2013), MSVC since 2013 (June 2013) & CUDA since 7 (March 2015).
Most helpful comment
The problematic aspect of the Boost dependency is that Caffe exposes Boost as part of its public API, instead of just being an internal implementation detail. This makes code using Caffe also depend on Boost. I'm currently integrating Caffe into a fairly large code base, and are facing problems related to Boost header version mismatches between Caffe and the rest of the code base. These types of problems are making Caffe adoption on Windows a hassle.
Could it be possible to revisit this issue of replacing some/most of Boost with C++11 now?
C++11 is widely supported on most platforms now. My impression is that the subset of C++11 used by Caffe have been supported GCC since 4.8.1 (May 2013), clang since 3.3 (June 2013), MSVC since 2013 (June 2013) & CUDA since 7 (March 2015).