[BioC] Compiling graph on solaris

Mark Cowley m.cowley at garvan.org.au
Tue Sep 22 04:18:58 CEST 2009


Thanks Hervé and Martin,
that fix worked a treat
Mark

On 22/09/2009, at 11:25 AM, Mark Cowley wrote:

> Dear Hervé,
> Thanks for looking into this for me, i really appreciate it.
>
> www.bioconductor.org seems to be down at the moment, but i'll report  
> back if i have success
>
> I'm using GNU ld and gcc
> $ which ld
> /opt/csw/bin/ld
> $ ld -v
> GNU ld version 2.17
> $ gcc -v
> Reading specs from /usr/local/lib/gcc/i386-pc-solaris2.10/3.4.6/specs
> Configured with: ../configure --with-as=/usr/ccs/bin/as --with-ld=/ 
> usr/ccs/bin/ld --enable-shared --enable-languages=c,c++,f77
> Thread model: posix
> gcc version 3.4.6
>
> Mark
> -----------------------------------------------------
> Mark Cowley, PhD
>
> Peter Wills Bioinformatics Centre
> Garvan Institute of Medical Research, Sydney, Australia
> -----------------------------------------------------
>
> On 19/09/2009, at 4:05 AM, Hervé Pagès wrote:
>
>> 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
>>
>> _______________________________________________
>> 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
>
> _______________________________________________
> 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



More information about the Bioconductor mailing list