[build2] About build2

Klaim - Joël Lamotte mjklaim at gmail.com
Thu Oct 6 17:39:44 UTC 2016


(is it ok to top-post?)

Here is my current understanding of conan vs build2:

1. conan is mainly developed using Python. Build2 is mainly developed using
C++.
2. conan targets both C and C++ libraries, maybe potentially more. Build2
targets C++ (and I guess C too but there is nothing specific to it).
3. conan does package dependency management and helps with integrating with
various build systems and IDEs.
    Build2 is set of tools (similar to git in approach and oraganization)
including package management and build system.
    Therefore, conan have to be used in combination with a build system
(similar to how CMake works, and CMake can be a build system for conan)
    while Build2 needs build tools, like compiler, linker etc.
4. With or without CMake, conan is designed to play well with IDE's by
generating project files.
    Build2 does not do that (at least for the moment) and is more intended
for a uniform use across platforms
    (that being said, it's an annoyance for some of my use cases so I hope
that in the future build2 will work well with IDE's,
     without having to modify the IDE ;) )
5. conan, by nature, cannot track in details the state of the builds, that
is it do not have a configuration change
    update system as precise as build2. On this point, conan simply don't
add anything new nor remove any power
    compared to current systems, but build2 does add a nice helpful
precision that prevent losing time on
    half-correctly linked binaries. (at least in theory)
6. Both provide a way to install, manage, upload and host libraries.
7. If you use Conan with CMake, you will have to call some conan-specific
function in your cmake files.
    If you use Build2, all your projects need to be written in the build2
specific project description,
    which have it's own advantages and problemes (you have to learn it, we
don't know yet if it scales - see cmake).
8. Conan benefits from experience from biicode (the dev comes from the
company making it) while
    Build2 benefits from experience from make (the dev participated in it's
development/maintenance).
9. Conan have more traction because it have more history and inherit from
people who were initially insterested in biicode
    (that is, the majority of people being interested in dependency
management for C++).
    Build2 have hour-long talks promoted by Boost and CppCon, while still
being very new.
    So basically at there is a lot of traction for both, froim different
people, but not the same kind, not in the same timeframe, and it's too
early to predict anything.
10. Conan have users. Build2 not yet (too early), so I guess if you have a
toy project that could get big,
    it would be a good idea to try build2 first and report here or on
reddit what you found interesting.

That's about it for now I guess.



On 6 October 2016 at 17:46, Boris Kolpackov <boris at codesynthesis.com> wrote:

> Hi Luca,
>
> Luca Carella <bkarelb at hotmail.it> writes:
>
> > I'm wondering what is the difference between build2 and conan package
> > manager, apart the integrated build system. I've discovered both on the
> > last cpp conference and i found them quite similar with.
>
> They may look similar on the surface but they are very different in
> substance. I am not too familiar with Conan, but if you want to get
> a sense of build2's approach, FAQ is probably a good place to start:
>
> https://build2.org/faq.xhtml
>
> Boris
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.build2.org/archives/users/attachments/20161006/bf6d7ed7/attachment.html>


More information about the users mailing list