[BioC] Compiling graph on solaris

Hervé Pagès hpages at fhcrc.org
Fri Sep 18 20:05:27 CEST 2009


Hi Mark,

I've applied a fix (sent to me off-list by Martin Morgan, thanks
Martin) that should make the mechanism used for the renaming of
graph.(so/dll) to BioC_graph.(so/dll) much more portable.

This fix should take about 24 hours to propagate to the public
package repositories. Then you will be able to reinstall graph
using biocLite(). The fixed versions are 1.22.3 (release) and
1.23.5 (devel).

Please let us know how it works for you.

Cheers,
H.


Hervé Pagès wrote:
> Hi Mark,
> 
> The graph package is doing something quite non-standard by adding
> explicitly -o BioC_graph.so to the gcc arguments in order to take
> control over the name given to the shared object (otherwise, by
> default, this object would be called graph.so).
> This was achieved by adding a Makevars file to the package with
> the following line in it:
> 
>   PKG_LIBS=-o BioC_graph.so
> 
> At compilation time the value of PKG_LIBS is inserted in the
> gcc command *after* -o graph.so, and, so far, the trick worked
> fine on many platforms, because ld on these platforms was using
> the last -o setting.
> Your ld command seems to behave differently though. What's its
> version? Is it GNU ld? We have GNU ld v2.19 on our Linux build
> machine.
> I don't know what the solution is but any additional information
> you can provide about your ld/gcc could help. Also you could check
> your ld man page for any hint.
> 
> Cheers,
> H.
> 
> 
> Mark Cowley wrote:
>> Dear list,
>> I just upgraded to R 2.9.2, on solaris 10, and stumbled across a  
>> problem with graph.
>> The package installed with 1 warning, but no errors. When I load it, 
>> I  get the following error:
>>  > library(graph)
>> Error in library.dynam(lib, package, package.lib) :
>>    shared library 'BioC_graph' not found
>> Error: package/namespace load failed for 'graph'
>>
>> This is using the version of graph that biocLite downloaded for me
>>     Using R version 2.9.2, biocinstall version 2.4.12.
>>     Installing Bioconductor version 2.4 packages:
>>
>> I looked more closely at the install output, and spotted the problem,  
>> but don't know how to fix it:
>> $ R CMD INSTALL -l /usr/local/R/library graph
>> * Installing *source* package 'graph' ...
>> ** libs
>> gcc -std=gnu99 -I/usr/local/R-2.9.2/lib/R/include  -I/usr/local/ 
>> include    -fpic  -I/usr/local/include -c graph.c -o graph.o
>> gcc -std=gnu99 -G -L/usr/local/lib -o graph.so graph.o -o  
>> BioC_graph.so -L/usr/local/R-2.9.2/lib/R/lib -lR
>> ld: warning: option -o appears more than once, first setting taken
>> ** R
>> ** data
>> ** inst
>> ** preparing package for lazy loading
>> ** help
>> *** installing help indices
>>   >>> Building/Updating help pages for package 'graph'
>>       Formats: text html latex example
>> Note: ignoring empty \keyword entries in file 'graphRendering.Rd'
>> Note: removing empty section \details in file 'graphRendering.Rd'
>> Note: removing empty section \examples in file 'graphRendering.Rd'
>> Note: removing empty section \seealso in file 'graphRendering.Rd'
>> ** building package indices ...
>> * DONE (graph)
>>
>> The ld warning indicates that there are two -o statements, it chooses  
>> the first, therefore ignore the '-o BioC_graph.so'.
>>
>> some googling found this message in the Bioconductor change logs 
>> (http://fgc.lsi.umich.edu/cgi-bin/blosxom3.cgi/2009/04/25 ):
>> graph
>> Renamed graph.(so/dll) BioC_graph.(so/dll) to avoid conflicts with  
>> graphviz.
>> googling also showed that the build logs on OSX seem to tolerate two - 
>> o arguments (-o graph.so and -o BioC_graph.so)
>>
>> i'd appreciate any help
>>
>> cheers,
>> Mark
>>
>> sessionInfo()
>> R version 2.9.2 (2009-08-24)
>> i386-pc-solaris2.10
>>
>> locale:
>> C
>>
>> attached base packages:
>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>
>> loaded via a namespace (and not attached):
>> [1] tcltk_2.9.2 tools_2.9.2
>>
>>
>>
>>     [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> Bioconductor mailing list
>> Bioconductor at stat.math.ethz.ch
>> https://stat.ethz.ch/mailman/listinfo/bioconductor
>> Search the archives: 
>> http://news.gmane.org/gmane.science.biology.informatics.conductor
> 

-- 
Hervé Pagès

Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M2-B876
P.O. Box 19024
Seattle, WA 98109-1024

E-mail: hpages at fhcrc.org
Phone:  (206) 667-5791
Fax:    (206) 667-1319



More information about the Bioconductor mailing list