OK, so it was not a successful install.  There are two concerns.  First,
Jeremiah notes that the BGL sources are not current.  Second, he uses g++
4.7.0.  For general edification I will post some notes I made when another
person noted difficulties with g++ 4.7.0.  Clearly I want to use current
boost if possible.

--- start notes

I can get a clean install of RBGL against Boost 1.49 with very minor
changes to our source, if I sacrifice layout.cpp
and incrConnComp.cpp in src.  There are nontrivial API changes that I think
will require a few hours to sort out to get these back in.  I wonder if we
_need_ layouts from RBGL.

This is all based on gcc 4.1.2 -- I may be able to look at this under 4.4
also.  But I strongly doubt that I will get a gcc 4.7 going any time soon.

--- end notes

So my view is that there is not much difficulty in adopting the current
boost graph sources with a not-so-bleeding edge g++ (we build with 4.5 I
believe).  I can't comment on whether we can get to more current BGL with
4.7 as I don't have access.  In any case I don't think our central support
will use g++ 4.7 for at least a little while, so I would ask whether you
could make suitable use of RBGL with a more mature g++.

I will put some time into updating the boost sources for the devel branch
RBGL.  We also need to discuss the prospects of federated use of boost
headers as they occur copied in several different bioc packages at this
time.


On Thu, May 24, 2012 at 1:24 PM, Jeremiah Willcock <jewillco@osl.iu.edu>wrote:

> On Thu, 24 May 2012, Dan Tenenbaum wrote:
>
>  Hi Jeremiah,
>>
>> On Thu, May 24, 2012 at 10:13 AM, Jeremiah Willcock <jewillco@osl.iu.edu>
>> wrote:
>>
>>> I am not an expert user of R, and I am looking to get the citation for
>>> the
>>> RBGL package.  I am using R 2.15.0,
>>>
>>
>> If you are using R 2.15 you should be using Bioconductor 2.10, and
>> therefore looking at this page:
>>
>> http://bioconductor.org/**packages/2.10/bioc/html/RBGL.**html<http://bioconductor.org/packages/2.10/bioc/html/RBGL.html>
>>
>
> I switched to that later; the install directions and first part of the
> demo file are the same, though.
>
>
>  and I entered the two commands on
>>
>>> http://bioc.ism.ac.jp/2.8/**bioc/html/RBGL.html<http://bioc.ism.ac.jp/2.8/bioc/html/RBGL.html>to install RBGL.  I was not
>>> running as root, so R created a subdirectory under my home directory for
>>> the
>>> installation.  RBGL appeared to install successfully, but when I try to
>>> get
>>> the citation, I get:
>>>
>>>  citation("RBGL")
>>>>
>>>
>>> Error in citation("RBGL") : package ‘RBGL’ not found
>>>
>>> Trying to run 'library(RBGL)' (the first non-comment line in the demo
>>> file
>>> at http://bioc.ism.ac.jp/2.8/**bioc/vignettes/RBGL/inst/doc/**RBGL.R<http://bioc.ism.ac.jp/2.8/bioc/vignettes/RBGL/inst/doc/RBGL.R>)
>>> produces:
>>>
>>>  library(RBGL)
>>>>
>>>
>>> Error in library(RBGL) : there is no package called ‘RBGL’
>>>
>>> What steps should I take to make sure the package is installed correctly?
>>>
>>
>>
>> What was the output of:
>>
>> source("http://bioconductor.**org/biocLite.R<http://bioconductor.org/biocLite.R>
>> ")
>> biocLite("RBGL")
>>
>
> I should have checked that more carefully -- it failed to compile (with
> g++ 4.7.0).  Here's the last part of the error message:
>
> In file included from boostIncl/boost/graph/detail/**
> adjacency_list.hpp:30:0,
>                 from boostIncl/boost/graph/**adjacency_list.hpp:313,
>                 from RBGL.hpp:26,
>                 from transitive_closure.cpp:16:
> boostIncl/boost/graph/graph_**concepts.hpp: In instantiation of
> ‘boost::concepts::**IncidenceGraph<G>::~**IncidenceGraph() [with G =
> std::vector<std::vector<long unsigned int>, std::allocator<std::vector<**long
> unsigned int> > >]’: boostIncl/boost/graph/graph_**concepts.hpp:70:1:
> required from ‘static void boost::concept::requirement<**Model>::failed()
> [with Model = boost::concepts::**IncidenceGraphConcept<std::**vector<std::vector<long
> unsigned int>, std::allocator<std::vector<**long unsigned int> > > >]’
> boostIncl/boost/concept_check.**hpp:43:1:   required from ‘void
> boost::function_requires(**Model*) [with Model = boost::concepts::**
> IncidenceGraphConcept<std::**vector<std::vector<long unsigned int>,
> std::allocator<std::vector<**long unsigned int> > > >]’
> boostIncl/boost/graph/depth_**first_search.hpp:84:7:   required from
> ‘void boost::detail::depth_first_**visit_impl(const IncidenceGraph&,
> typename boost::graph_traits<Graph>::**vertex_descriptor, DFSVisitor&,
> ColorMap, TerminatorFunc) [with IncidenceGraph =
> std::vector<std::vector<long unsigned int>, std::allocator<std::vector<**long
> unsigned int> > >; DFSVisitor = boost::topo_sort_visitor<std::**
> back_insert_iterator<std::**vector<long unsigned int> > >; ColorMap =
> boost::iterator_property_map<_**_gnu_cxx::__normal_iterator<**boost::default_color_type*,
> std::vector<boost::default_**color_type> >, boost::identity_property_map,
> boost::default_color_type, boost::default_color_type&>; TerminatorFunc =
> boost::detail::nontruth2; typename boost::graph_traits<Graph>::**vertex_descriptor
> = long unsigned int]’ boostIncl/boost/graph/depth_**first_search.hpp:201:7:
>   required from ‘void boost::depth_first_search(**const VertexListGraph&,
> DFSVisitor, ColorMap, typename boost::graph_traits<Graph>::**vertex_descriptor)
> [with VertexListGraph = std::vector<std::vector<long unsigned int>,
> std::allocator<std::vector<**long unsigned int> > >; DFSVisitor =
> boost::topo_sort_visitor<std::**back_insert_iterator<std::**vector<long
> unsigned int> > >; ColorMap = boost::iterator_property_map<_**
> _gnu_cxx::__normal_iterator<**boost::default_color_type*,
> std::vector<boost::default_**color_type> >, boost::identity_property_map,
> boost::default_color_type, boost::default_color_type&>; typename
> boost::graph_traits<Graph>::**vertex_descriptor = long unsigned int]’
> boostIncl/boost/graph/depth_**first_search.hpp:249:9:   required from
> ‘static void boost::detail::dfs_dispatch<**boost::detail::error_property_*
> *not_found>::apply(const VertexListGraph&, DFSVisitor, Vertex, const
> boost::bgl_named_params<P, T, R>&, boost::detail::error_property_**not_found)
> [with VertexListGraph = std::vector<std::vector<long unsigned int>,
> std::allocator<std::vector<**long unsigned int> > >; Vertex = long
> unsigned int; DFSVisitor = boost::topo_sort_visitor<std::**
> back_insert_iterator<std::**vector<long unsigned int> > >; P =
> boost::topo_sort_visitor<std::**back_insert_iterator<std::**vector<long
> unsigned int> > >; T = boost::graph_visitor_t; R =
> boost::bgl_named_params<boost:**:identity_property_map,
> boost::vertex_index_t, boost::no_property>]’ boostIncl/boost/graph/depth_*
> *first_search.hpp:329:5:   required from ‘void boost::depth_first_search(*
> *const VertexListGraph&, const boost::bgl_named_params<P, T, R>&) [with
> VertexListGraph = std::vector<std::vector<long unsigned int>,
> std::allocator<std::vector<**long unsigned int> > >; P =
> boost::topo_sort_visitor<std::**back_insert_iterator<std::**vector<long
> unsigned int> > >; T = boost::graph_visitor_t; R =
> boost::bgl_named_params<boost:**:identity_property_map,
> boost::vertex_index_t, boost::no_property>]’ boostIncl/boost/graph/**topological_sort.hpp:64:5:
>   required from ‘void boost::topological_sort(**VertexListGraph&,
> OutputIterator, const boost::bgl_named_params<P, T, R>&) [with
> VertexListGraph = std::vector<std::vector<long unsigned int>,
> std::allocator<std::vector<**long unsigned int> > >; OutputIterator =
> std::back_insert_iterator<std:**:vector<long unsigned int> >; P =
> boost::identity_property_map; T = boost::vertex_index_t; R =
> boost::no_property]’ boostIncl/boost/graph/**transitive_closure.hpp:120:5:
>   required from ‘void boost::transitive_closure(**const Graph&, GraphTC&,
> G_to_TC_VertexMap, VertexIndexMap) [with Graph = R_adjacency_list<boost::*
> *directedS, double>; GraphTC = R_adjacency_list<boost::**directedS,
> double>; G_to_TC_VertexMap = boost::iterator_property_map<**long unsigned
> int*, boost::vec_adj_list_vertex_id_**map<boost::property<boost::**vertex_color_t,
> boost::default_color_type>, long unsigned int>, long unsigned int, long
> unsigned int&>; VertexIndexMap = boost::vec_adj_list_vertex_id_**
> map<boost::property<boost::**vertex_color_t, boost::default_color_type>,
> long unsigned int>]’ boostIncl/boost/graph/**transitive_closure.hpp:263:5:
>   required from ‘void boost::transitive_closure(**const Graph&, GraphTC&)
> [with Graph = R_adjacency_list<boost::**directedS, double>; GraphTC =
> R_adjacency_list<boost::**directedS, double>]’
> transitive_closure.cpp:29:30:   required from here
> boostIncl/boost/graph/graph_**concepts.hpp:88:11: error: ‘out_edges’ was
> not declared in this scope, and no declarations were found by
> argument-dependent lookup at the point of instantiation [-fpermissive] In
> file included from boostIncl/boost/graph/**transpose_graph.hpp:16:0,
>                 from boostIncl/boost/graph/strong_**components.hpp:258,
>                 from boostIncl/boost/graph/**transitive_closure.hpp:18,
>                 from transitive_closure.cpp:17:
> boostIncl/boost/graph/reverse_**graph.hpp:151:1: note: ‘template<class
> BidirectionalGraph, class GRef> std::pair<typename
> boost::graph_traits<Graph>::**in_edge_iterator, typename
> boost::graph_traits<Graph>::**in_edge_iterator> boost::out_edges(typename
> boost::graph_traits<Graph>::**vertex_descriptor, const
> boost::reverse_graph<Graph, GraphRef>&)’ declared here, later in the
> translation unit In file included from boostIncl/boost/graph/detail/**
> adjacency_list.hpp:30:0,
>                 from boostIncl/boost/graph/**adjacency_list.hpp:313,
>                 from RBGL.hpp:26,
>                 from transitive_closure.cpp:16:
> boostIncl/boost/graph/graph_**concepts.hpp:89:11: error: ‘out_degree’ was
> not declared in this scope, and no declarations were found by
> argument-dependent lookup at the point of instantiation [-fpermissive] In
> file included from boostIncl/boost/graph/**transpose_graph.hpp:16:0,
>                 from boostIncl/boost/graph/strong_**components.hpp:258,
>                 from boostIncl/boost/graph/**transitive_closure.hpp:18,
>                 from transitive_closure.cpp:17:
> boostIncl/boost/graph/reverse_**graph.hpp:173:1: note: ‘template<class
> BidirectionalGraph, class GRef> typename boost::graph_traits<Graph>::**degree_size_type
> boost::out_degree(typename boost::graph_traits<Graph>::**vertex_descriptor,
> const boost::reverse_graph<Graph, GraphRef>&)’ declared here, later in the
> translation unit
> make: *** [transitive_closure.o] Error 1 ERROR: compilation failed for
> package ‘RBGL’ * removing ‘/nfs/deep-thought/home/users/**
> jewillco/R/x86_64-redhat-**linux-gnu-library/2.15/RBGL’
>
> The downloaded source packages are in
>        ‘/tmp/Rtmp28G8jD/downloaded_**packages’
> Warning messages:
> 1: In install.packages(pkgs = pkgs, lib = lib, repos = repos, ...) :
>  installation of package ‘RBGL’ had non-zero exit status
> 2: installed directory not writable, cannot update packages 'foreign',
> 'MASS',
>  'mgcv', 'msm', 'mvtnorm', 'nlme', 'RODBC', 'survival', 'zoo', 'car',
>  'multcomp', 'systemfit'
>
> I think a lot of the warnings are from using an old version of BGL;
> newer ones have many bug fixes applied and warnings resolved.
>
>
>  Also, what is the output of
>> sessionInfo()
>> ?
>>
>
> R version 2.15.0 (2012-03-30)
> Platform: x86_64-redhat-linux-gnu (64-bit)
>
> locale:
>  [1] LC_CTYPE=en_US.utf8       LC_NUMERIC=C
>  [3] LC_TIME=en_US.utf8        LC_COLLATE=en_US.utf8
>  [5] LC_MONETARY=en_US.utf8    LC_MESSAGES=en_US.utf8
>  [7] LC_PAPER=C                LC_NAME=C
>  [9] LC_ADDRESS=C              LC_TELEPHONE=C
> [11] LC_MEASUREMENT=en_US.utf8 LC_IDENTIFICATION=C
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
>
>
>
>>
>>  Could someone please send me (or post) the citation, without needing to
>>> install the package to access it?  Thank you.
>>>
>>
>>  citation("RBGL")
>>>
>>
>> To cite package ‘RBGL’ in publications use:
>>
>>  Vince Carey, Li Long and R. Gentleman (). RBGL: An interface to the
>>  BOOST graph library. R package version 1.31.1.
>>  http://www.bioconductor.org
>>
>> A BibTeX entry for LaTeX users is
>>
>>  @Manual{,
>>   title = {RBGL: An interface to the BOOST graph library},
>>   author = {Vince Carey and Li Long and R. Gentleman},
>>   note = {R package version 1.31.1},
>>   url = {http://www.bioconductor.org},
>>  }
>>
>> ATTENTION: This citation information has been auto-generated from the
>> package DESCRIPTION file and may need manual editing, see
>> ‘help("citation")’ .
>>
>> Warning message:
>> In citation("RBGL") : no date field in DESCRIPTION file of package ‘RBGL’
>>
>
> Thank you very much for that.
>
> -- Jeremiah Willcock
> _______________________________________________
> Bioconductor mailing list
> Bioconductor@r-project.org
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives:
> http://news.gmane.org/gmane.science.biology.informatics.conductor
>

	[[alternative HTML version deleted]]

