![](https://secure.gravatar.com/avatar/dc940f48c5635785f32941f1fbe6b601.jpg?s=120&d=mm&r=g)
On Feb 1, 2006, at 2:39 PM, Michael Wybrow wrote:
On Wed, 1 Feb 2006, Tim Dwyer wrote:
I'd appreciate any feedback people have on this idea. Also, I'd really like to use the boost 'graph' libraries to get this happening quickly. Boost already has some basic layout algorithms which we can use right away, but I'll also need the underlying graph data-structures and algorithms in boost to implement new algorithms. What are the logistics of adding boost to the inkscape dependency tree?
While I haven't actually used boost before, I was just looking at the webpage for the Boost Graph Library (http://www.boost.org/libs/ graph/doc/) which says "[it] is a header-only library and does not need to be built to be used."
Unfortunately, the majority of my experience with it has been negative.
That's not really due to the quality of the library itself or anything, but rather due to how it fit (or rather, didn't fit well) in projects, some with the individuals bringing it in, and some due to a more literal mismatch to code for the rest of the project.
Again, it was one of those things that seemed indispensable to those who implemented, but ended up being a net negative for the projects overall.
(Oh, and all of BOOST is, or at least was, header only)
From what I can see, the examples only require the graph library and don't seem to depend on the main Boost library. So it may be that this library wouldn't have to be a "new dependency". If the licence is compatible we could just add it to the source tree.
Well... check things carefully. I know that it is supposed to be crafted to be used in parts, we just would want to be sure those parts don't bring in too many others (like those magic, do-it-all-for- you-so-you-don't-have-to-think pointers).
Oh, and one general negative is having a duplicate of a live tree. That tends to get a bit problematic, and includes the need for periodic merging from the main source. Someone will have to commit to keeping a vendor import going.
At one point I think there were concerns in regards to platform coverage. Various people build Inkscape on a very wide range of platforms and compilers, so we end up with a bit more concern than some other projects.
Another factor might be the build process. I've not looked at things lately, but there used to be some issue with that.
Hmmm.... and then the "be sure to compile with optimization" has me a little concerned, since as among other things I always compile without it in order to facilitate debugging, etc.