[Bioc-sig-seq] Problem installing latest version (1.0.2) RSamtools from Bioconductor
Martin Morgan
mtmorgan at fhcrc.org
Thu Jun 3 15:36:18 CEST 2010
On 06/03/2010 05:46 AM, kanika arora wrote:
> Hi Martin and Marcus,
>
> Thanks for your replies. libz library is installed in my machine.
>
>
>
> [kanikacn at localhost ~ ]# /sbin/ldconfig -p|grep libz
>
> libz.so.1 (libc6,x86-64) => /usr/lib64/libz.so.1
>
> libz.so.1 (libc6) => /usr/lib/libz.so.1
>
> libz.so (libc6,x86-64) => /usr/lib64/libz.so
>
> libz.so (libc6) => /usr/lib/libz.so
>
>
>
> Since I was getting error while installing Rsamtools via biocLite, I also
> tried building the package through its source. That is why I installed all
> the dependencies of the package.
My guess is that Rsamtools is compiled against headers for your 64-bit
library, but linking against the 32 bit. So I'm guessing that
objdump -T /usr/lib64/libz.so.1 | grep gzopen
(or the file pointed to by /usr/lib64/libz.so if it's a symbolic link)
finds gzopen64 but
objdump -T /usr/lib/libz.so.1 | grep gzopen
finds gzopen. And that if you obtain the source of Rsamtools and unpack it
tar xzf Rsamtools_1.0.2.tar.gz
then try to install it
R CMD INSTALL Rsamtools
there should be a file Rsamtools/src/Rsamtools.so. I'm guessing that
R CMD ldd Rsamtools/src/Rsamtools.so
points to /usr/lib/libz.so.1, whereas we want it to point to
/usr/lib64/libz.so.
If that's the case then it might be the Rsamtools configure script and
as a work-around you could try replacing in Rsamtools/configure.ac
AC_CHECK_LIB([z], [gzeof],,[AC_MSG_ERROR([need libz with gzeof])])
with
AC_CHECK_LIB([z], [gzeof64],,[AC_MSG_ERROR([need libz with gzeof])])
and then
cd Rsamtools && autoconf && cd ..
R CMD INSTALL --preclean Rsamtools
It would help to have the full output of this last command; feel free to
mail it to me off-list.
Martin
>
>
>
> The value of the environment variable LD_LIBRARY_PATH is :
>
>
>
> [kanikacn at localhost ~ ]# R CMD env | grep LD_LIBRARY_PATH (*thanks
> for sharing this nice Linux/R trick)
>
> LD_LIBRARY_PATH=/usr/lib64/R/lib:/usr/local/lib64:/usr/lib64/gcj-4.1.2
>
>
> I unset this environment variable and reinstalled R again but still
> Rsamtools is showing the same error.
>
> Regards,
> Kanika
>
>
> On Thu, Jun 3, 2010 at 6:42 AM, Marcus Davy <mdavy86 at gmail.com> wrote:
>
>> thanks, this is what I had when the environment variable was still set;
>>
>> $ R CMD env | grep LD_LIBRARY_PATH
>>
>> LD_LIBRARY_PATH=/opt/R/R-2.11.0/lib64/R/lib:/usr/local/lib64:/usr/lib64/gcj-4.1.2:/opt/staden-linux-x86_64-1-7-1b/lib/linux-x86_64-binaries
>>
>>
>> Marcus
>>
>>
>>
>> On Thu, Jun 3, 2010 at 12:41 PM, Martin Morgan <mtmorgan at fhcrc.org> wrote:
>>
>>> On 06/02/2010 05:05 PM, Marcus Davy wrote:
>>>> Hi Martin,
>>>> I had the same issue only yesterday installing ShortRead on a R-2.11.0
>>> fresh
>>>> source installation for redhat enterprise linux with
>>>> '--prefix=/opt/R/R-2.11.0.' The dependancy Rsamtools failed using
>>>> biocLite("ShortRead")
>>>>
>>>> ** testing if installed package can be loaded
>>>> Error in dyn.load(file, DLLpath = DLLpath, ...) :
>>>> unable to load shared library
>>>> '/opt/R/R-2.11.0/lib64/R/library/Rsamtools/libs/Rsamtools.so':
>>>> /opt/R/R-2.11.0/lib64/R/library/Rsamtools/libs/Rsamtools.so: undefined
>>>> symbol: deflateSetHeader
>>>> ERROR: loading failed
>>>> * removing ‘/opt/R/R-2.11.0/lib64/R/library/Rsamtools’
>>>>
>>>> I also traced this to libz.so.1, in this case it was incorrectly
>>> pointing to
>>>> an installation of staden on the machine, which I traced by also
>>> attempting
>>>> a manual install;
>>>>
>>>> ldd /tmp/Rsamtools/src/Rsamtools.so
>>>> libz.so.1 =>
>>>> /opt/staden-linux-x86_64-1-7-1b/lib/linux-x86_64-binaries/libz.so.1
>>>> (0x00002acd7097d000)
>>>> ...
>>>>
>>>> locate libz.so.1
>>>> /opt/staden-linux-x86_64-1-7-1b/lib/linux-x86_64-binaries/libz.so.1
>>>> /opt/staden-linux-x86_64-1-7-1b/lib/linux-x86_64-binaries/libz.so.1.2.2
>>>> /usr/lib/libz.so.1
>>>> /usr/lib/libz.so.1.2.3
>>>> /usr/lib64/libz.so.1
>>>> /usr/lib64/libz.so.1.2.3
>>>>
>>>> The environment variable LD_LIBRARY_PATH was being set to
>>>>
>>>> /opt/staden-linux-x86_64-1-7-1b/lib/linux-x86_64-binaries
>>>>
>>>> What seemed to be happening was the R ./configure was picking up the
>>>> LD_LIBRARY_PATH to staden (e.g. in ./configure log: PATH:
>>>> /opt/staden-linux-x86_64-1-7-1b/linux-x86_64-bin), so I unset the
>>>> environment variable reinstalled R, then installed ShortRead using
>>> biocLite
>>>> without problems
>>>
>>> Thanks Marcus -- this helps to clarify -- an incomplete rather than
>>> non-existent libz; the configure script in Rsamtools looks for a
>>> particular function that I thought was relatively diagnostic of a modern
>>> libz, so definitely this allows Rsamtools to get past configure before
>>> breaking.
>>>
>>> A couple of linux / R tricks. Preceding commands with 'R CMD' sets up
>>> the environment to be the way R sees it, so
>>>
>>> R CMD env | grep LD_LIBRARY_PATH
>>>
>>> might differ from env |grep LD_LIBRARY_PATH, and likewise for ldd; this
>>> can be helpful to distinguish between 'my system is kind of funky' from
>>> 'my R is kind of funky'. It's also helpful in general, e.g., R CMD
>>> Sweave someFile.Rnw sets the R environment so that Sweave.sty (in the R
>>> distribution) is found.
>>>
>>> Also, R reads variables from R_HOME/etc/Makevars, and you can override
>>> settings there with values in ~/.R/Makevars. This makes it cheaper to
>>> experiment, e.g., with CFLAGS or LD_LIBRARY_PATH, and also to see what
>>> value LD_LIBRARY_PATH took when R was configured (in R_HOME/etc/Makevars).
>>>
>>> Martin
>>>
>>>>
>>>>
>>>> Cheers,
>>>>
>>>> Marcus
>>>>
>>>>> version _
>>>> platform x86_64-unknown-linux-gnu
>>>> arch x86_64
>>>> os linux-gnu
>>>> system x86_64, linux-gnu
>>>> status
>>>> major 2
>>>> minor 11.0
>>>> year 2010
>>>> month 04
>>>> day 22
>>>> svn rev 51801
>>>> language R
>>>> version.string R version 2.11.0 (2010-04-22)
>>>>
>>>>
>>>> On Thu, Jun 3, 2010 at 6:13 AM, Martin Morgan <mtmorgan at fhcrc.org>
>>> wrote:
>>>>
>>>>> Hi Kanika --
>>>>>
>>>>> On 06/02/2010 05:48 AM, kanika arora wrote:
>>>>>> Hi ALL,
>>>>>>
>>>>>> * *
>>>>>>
>>>>>> I am trying to install l.0.2 version Rsamtools from Bioconductor and
>>>>> facing
>>>>>> problems. Please find the error message mentioned below:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ** help
>>>>>>
>>>>>> *** installing help indices
>>>>>>
>>>>>> converting help for package âRsamtoolsâ
>>>>>>
>>>>>> finding HTML links ... done
>>>>>>
>>>>>> BamViews-class html
>>>>>>
>>>>>> finding level-2 HTML links ... done
>>>>>>
>>>>>>
>>>>>>
>>>>>> Rsamtools-package html
>>>>>>
>>>>>> ScanBamParam-class html
>>>>>>
>>>>>> readBamGappedAlignments html
>>>>>>
>>>>>> Rd warning: ./man/readBamGappedAlignments.Rd:10: missing file link
>>>>>> âGappedAlignmentsâ
>>>>>>
>>>>>> Rd warning: ./man/readBamGappedAlignments.Rd:36: missing file link
>>>>>> âGappedAlignmentsâ
>>>>>>
>>>>>> readPileup html
>>>>>>
>>>>>> Rd warning: ./man/readPileup.Rd:34: missing file link âGRangesâ
>>>>>>
>>>>>> scanBam html
>>>>>>
>>>>>> ** building package indices ...
>>>>>>
>>>>>> ** testing if installed package can be loaded
>>>>>>
>>>>>> Error in dyn.load(file, DLLpath = DLLpath, ...) :
>>>>>>
>>>>>> unable to load shared library
>>>>>> '/usr/lib64/R/library/Rsamtools/libs/Rsamtools.so':
>>>>>>
>>>>>> /usr/lib64/R/library/Rsamtools/libs/Rsamtools.so: undefined symbol:
>>>>>> gzopen64
>>>>>
>>>>>
>>>>> Rsamtools depends on having a system 'libz' installed. Does your system
>>>>> have this (e.g., for me,
>>>>>
>>>>> mtmorgan at mm:~> /sbin/ldconfig -p|grep libz
>>>>> [...snip...]
>>>>> libz.so.1 (libc6,x86-64) => /lib64/libz.so.1
>>>>> libz.so.1 (libc6) => /lib/libz.so.1
>>>>> libz.so (libc6,x86-64) => /usr/lib64/libz.so
>>>>>
>>>>> This should be checked during package configuration, so I'm a little
>>>>> surprised that the error comes up at this point. Can you confirm that
>>>>> you are installing this with
>>>>>
>>>>> biocLite('Rsamtools')
>>>>>
>>>>> ? I'm a little nervous that when you say you 'installed all the
>>>>> dependencies' that you are doing something else --
>>> biocLite('Rsamtools')
>>>>> installs the correct version of the dependencies for your version of R.
>>>>>
>>>>> Martin
>>>>>
>>>>>> ERROR: loading failed
>>>>>>
>>>>>> * removing â/usr/lib64/R/library/Rsamtoolsâ
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> sessionInfo()
>>>>>>
>>>>>> R version 2.11.0 (2010-04-22)
>>>>>>
>>>>>> x86_64-redhat-linux-gnu
>>>>>>
>>>>>>
>>>>>>
>>>>>> locale:
>>>>>>
>>>>>> [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
>>>>>>
>>>>>> [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
>>>>>>
>>>>>> [5] LC_MONETARY=C LC_MESSAGES=en_US.UTF-8
>>>>>>
>>>>>> [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
>>>>>>
>>>>>> [9] LC_ADDRESS=C LC_TELEPHONE=C
>>>>>>
>>>>>> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
>>>>>>
>>>>>>
>>>>>>
>>>>>> attached base packages:
>>>>>>
>>>>>> [1] stats graphics grDevices utils datasets methods base
>>>>>>
>>>>>>
>>>>>>
>>>>>> other attached packages:
>>>>>>
>>>>>> [1] goseq_1.0.1 geneLenDataBase_0.99.4 BiasedUrn_1.03
>>>>>>
>>>>>>
>>>>>>
>>>>>> loaded via a namespace (and not attached):
>>>>>>
>>>>>> [1] AnnotationDbi_1.10.1 Biobase_2.8.0 Biostrings_2.16.2
>>>>>>
>>>>>> [4] BSgenome_1.16.1 DBI_0.2-5 GenomicRanges_1.0.1
>>>>>>
>>>>>> [7] grid_2.11.0 IRanges_1.6.4 lattice_0.18-5
>>>>>>
>>>>>> [10] Matrix_0.999375-38 mgcv_1.6-1 nlme_3.1-96
>>>>>>
>>>>>> [13] RCurl_1.4-2 RSQLite_0.9-1 rtracklayer_1.8.1
>>>>>>
>>>>>> [16] tools_2.11.0 XML_3.1-0
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> I already installed all the dependencies of the package. Please guide
>>> me
>>>>> in
>>>>>> this context.
>>>>>>
>>>>>> Thanks in advance,
>>>>>>
>>>>>> Kanika
>>>>>>
>>>>>> [[alternative HTML version deleted]]
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Bioc-sig-sequencing mailing list
>>>>>> Bioc-sig-sequencing at r-project.org
>>>>>> https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing
>>>>>
>>>>>
>>>>> --
>>>>> Martin Morgan
>>>>> Computational Biology / Fred Hutchinson Cancer Research Center
>>>>> 1100 Fairview Ave. N.
>>>>> PO Box 19024 Seattle, WA 98109
>>>>>
>>>>> Location: Arnold Building M1 B861
>>>>> Phone: (206) 667-2793
>>>>>
>>>>> _______________________________________________
>>>>> Bioc-sig-sequencing mailing list
>>>>> Bioc-sig-sequencing at r-project.org
>>>>> https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing
>>>>>
>>>>
>>>
>>>
>>> --
>>> Martin Morgan
>>> Computational Biology / Fred Hutchinson Cancer Research Center
>>> 1100 Fairview Ave. N.
>>> PO Box 19024 Seattle, WA 98109
>>>
>>> Location: Arnold Building M1 B861
>>> Phone: (206) 667-2793
>>>
>>
>>
>
--
Martin Morgan
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109
Location: Arnold Building M1 B861
Phone: (206) 667-2793
More information about the Bioc-sig-sequencing
mailing list