[Bioc-devel] [Boostheaders-devel] Boost packaged on rforge

Peter Glaus glaus at cs.man.ac.uk
Fri May 3 11:42:22 CEST 2013


Hi Vincent,
regarding BitSeq:
As far as I can remember we only removed the #include<iostream> as 
earlier versions of R CMD check used to complain about using iostream in 
the source code. I can't fully verify it as current version of R builds 
and checks without warning even without that change. (The other option 
is that I wanted to make sure that iostream won't be used as it can 
cause problems with R.).

Other than that, I don't recall any problems with Boost and iostream. 
However, BitSeq uses just a very small subset of Boost headers (3.8M 
unpacked).

Peter.

On 02/05/13 15:01, Vincent Carey wrote:
> On Thu, May 2, 2013 at 7:37 AM, Dirk Eddelbuettel <edd at debian.org> wrote:
>
>> On 2 May 2013 at 06:39, Vincent Carey wrote:
>> | Thanks for inputs from Steffen and Steve.  When a considerable block of
>> time
>> | opens up I will see about the effort required to have RBGL make use of
>> this.
>> |  The compressed size of boost 1.49 is abut 49MB, while the compressed
>> size of
>> | BH is 1.4 MB, and the subset that I use for RBGL has compressed size 1.9
>> MB.
>> |  Is there any down side to distributing the entire header set apart from
>> | expansion to 444 MB on installation?  I noticed that bitSeq needed to
>> remove
>>
>> Yes, 444mb is considered a downside.
>>
>> Our thought process is/was that there are lots of packages that use only a
>> subset of Boost -- the 80/20 rule clearly applies.  I know I have my
>> fingers
>> in one or two packages that apply, but Jay and Mike drove the concrete
>> first
>> build of BH by providing what bigmemory needed.
>>
>> RBGL may be pushing it, but we would surely try to accomodate it, provided
>> this would work without linking.  We really want to try to limit ourselves
>> to
>> templates here.
>>
> I think this can be done.  I'll try and get more precise on the necessary
> inclusions in the next couple of weeks.
>
>
>> | an inclusion of iostream.h from one of the headers used.... once you
>> need such
>> | customization the benefits of a centrally managed distribution diminish.
>>
>> Are you saying bitSeq only builds when certain Boost headers are removed
>> from
>> a full Boost installation or copy?  That sounds weird.
>>
>>
> Sorry to be unclear.  The following is a README from bitSeq src/boost
> folder.  Note the
> "CHANGES" entry.
>
> Subset of boost libraries, version 1.53.0. (22.3.2013)
> ------------------------------------------------------
>
> DEPENDENCY:
> -----------
>   boost/random/gamma_distribution.hpp
>   boost/random/mersenne_twister.hpp
>   boost/random/normal_distribution.hpp
>   boost/random/uniform_01.hpp
>
> CHANGES:
> --------
> random/uniform_01.hpp
>   -> commented out line 19:
>     #include<iostream>
>
> CREATED VIA:
> ------------
> [ no need to build all libraries, just use bcp tool to copy relevant
> headers ]
> 1) download boost sources from (http://sourceforge.net/projects/boost/)
> 2) unpack
> 3) bootstrap and build bcp:
> cd <path_to_boost>/boost_1_53_0
> ./bootstrap.sh
> ./bjam tools/bcp
> 4) run bcp to extract relevant files and save them in directory boost in
> <destination dir>
> ./dist/bin/bcp \
>     boost/random/gamma_distribution.hpp \
>     boost/random/mersenne_twister.hpp \
>     boost/random/normal_distribution.hpp \
>     boost/random/uniform_01.hpp \
>     <destination dir>
> 5) copy LICENSE_1_0.txt and create README
>
>
>> Dirk
>>
>> | On Thu, May 2, 2013 at 1:50 AM, Steffen Neumann <sneumann at ipb-halle.de>
>> wrote:
>> |
>> |     Hi Vincent,
>> |
>> |     BH currently works the way that the package sources
>> |     (and that includes BH/inst/include/boost/*) are
>> |     automagically created by bcp'ing the dependencies
>> |     of *some* R packages (e.g. bigmemory on rforge).
>> |
>> |     John and Dirk et al said that people can ask
>> |     for additional dependencies on the tracker [1].
>> |
>> |     If you want to port your package to BH
>> |     and figure out the required dependencies,
>> |     check out svn://r-forge.r-project.org/svnroot/boostheaders
>> |     and edit boostheaders/CreateBoost.R (see how I munged
>> |     that file on [2] ...)
>> |
>> |     Then iterate over
>> |
>> |             cd boostheaders
>> |             rm -rf pkg/BH
>> |             R --vanilla <CreateBoost.R
>> |             R CMD INSTALL pkg/BH
>> |             R CMD INSTALL /your/package/
>> |
>> |     until success. Unfortunately with boost, it might not
>> |     be as straightforward as adding " graph ",
>> |     that's why I have that insane "find /my/package -exec bcp -scan"
>> |     in my hacked [2]. Also note that in a hacked version of
>> |     CreateBoost.R it is possible to switch between boost versions.
>> |
>> |     Yours,
>> |     Steffen
>> |
>> |
>> |     [1]
>> https://r-forge.r-project.org/tracker/?atid=5310&group_id=1469&func=
>> |     browse
>> |     [2]
>> https://github.com/sneumann/boostheaders/blob/master/CreateBoost.R
>> |
>> |
>> |
>> |
>> |
>> |
>> |
>> |
>> |     On Wed, 2013-05-01 at 22:47 -0400, Vincent Carey wrote:
>> |     > are the headers for the "boost graph library" purposely excluded?
>>   i
>> |     > do not see them in BH/include
>> |     >
>> |     > On Wed, May 1, 2013 at 6:19 PM, Steffen Neumann
>> |     > <sneumann at ipb-halle.de> wrote:
>> |     >         Hi BioC world,
>> |     >
>> |     >         I'd like to draw the attention to the boostheaders (or BH)
>> |     >         package on rforge.org [1], which packages the boost
>> headers
>> |     >         so that other packages can link/include them.
>> |     >
>> |     >         I know a few packages on BioC are using -- and embedding --
>> |     >         boost.
>> |     >         There have also been some discussion a long time ago [2]
>> |     >
>> |     >         This might be a chance to get a single package that
>> contains
>> |     >         boost ?
>> |     >
>> |     >         Yours,
>> |     >         Steffen
>> |     >
>> |     >         [1] http://r-forge.r-project.org/projects/boostheaders/
>> |     >         [2]
>> |     >         https://stat.ethz.ch/pipermail/bioc-devel/2009-February/
>> |     001808.html
>> |     >
>> |     >
>> |     >
>> |     >         --
>> |     >         IPB Halle                    AG Massenspektrometrie
>> |     &
>> |     >         Bioinformatik
>> |     >         Dr. Steffen Neumann          http://www.IPB-Halle.DE
>> |     >         Weinberg 3                   http://msbi.bic-gh.de
>> |     >         06120 Halle                  Tel. +49 (0) 345 5582 -
>> |     1470
>> |     >                                           +49 (0)
>> |     345 5582 - 0
>> |     >         sneumann(at)IPB-Halle.DE     Fax. +49 (0) 345 5582 - 1409
>> |     >
>> |     >         _______________________________________________
>> |     >         Bioc-devel at r-project.org mailing list
>> |     >         https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> |     >
>> |
>> |
>> |     --
>> |     IPB Halle                    AG Massenspektrometrie &
>> |     Bioinformatik
>> |     Dr. Steffen Neumann          http://www.IPB-Halle.DE
>> |     Weinberg 3                   http://msbi.bic-gh.de
>> |     06120 Halle                  Tel. +49 (0) 345 5582 - 1470
>> |                                       +49 (0) 345 5582 - 0
>> |     sneumann(at)IPB-Halle.DE     Fax. +49 (0) 345 5582 - 1409
>> |
>> |
>> |
>> |
>> | ----------------------------------------------------------------------
>> | _______________________________________________
>> | Boostheaders-devel mailing list
>> | Boostheaders-devel at lists.r-forge.r-project.org
>> |
>> http://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/boostheaders-devel
>>
>> --
>> Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
>>
> 	[[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel



More information about the Bioc-devel mailing list