cggh / biipy

Docker image for bioinformatics analysis.
MIT License
6 stars 2 forks source link

rpy2 compatibility #43

Open alimanfoo opened 7 years ago

alimanfoo commented 7 years ago

Resolve rpy2 installation/dependency issues, xref #38.

alimanfoo commented 7 years ago

OK, travis build is erroring with same problem:

ImportError: libicuuc.so.54: cannot open shared object file: No such file or directory

@hardingnj any chance you could investigate? Looks like either a missing dependency or dependency conflict?

hardingnj commented 7 years ago

Yes-can have a look tomorrow

hardingnj commented 7 years ago

Potentially relevant: https://github.com/pkgw/pwkit/issues/3

hardingnj commented 7 years ago

Using R in the docker image doesn't work either.

This workaround fixes: https://github.com/ContinuumIO/anaconda-issues/issues/152#issuecomment-225214743

But we still have the issue with libicuuc

alimanfoo commented 7 years ago

I wonder if the icu issue is to do with the fact that some r packages are coming from conda-forge and some from the r channel, e.g.:

r 3.3.2 r3.3.2_0 r r-base 3.3.2 2 conda-forge

I'm trying again with the channel priorities changed so r takes precendence, will see if that's better...

On Wednesday, February 1, 2017, Nick Harding notifications@github.com wrote:

Using R in the docker image doesn't work either.

This workaround fixes: ContinuumIO/anaconda-issues#152 (comment) https://github.com/ContinuumIO/anaconda-issues/issues/152#issuecomment-225214743

But we still have the issue with libicuuc

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cggh/biipy/pull/43#issuecomment-276625949, or mute the thread https://github.com/notifications/unsubscribe-auth/AAq8QjefNj6FhnQghBuUTUaaAZG_M7rpks5rYGFogaJpZM4Ly9_5 .

-- Alistair Miles Head of Epidemiological Informatics Centre for Genomics and Global Health http://cggh.org The Wellcome Trust Centre for Human Genetics Roosevelt Drive Oxford OX3 7BN United Kingdom Email: alimanfoo@googlemail.com Web: http://purl.org/net/aliman Twitter: https://twitter.com/alimanfoo Tel: +44 (0)1865 287721

hardingnj commented 7 years ago

Seems to be with icu. We can go up to 58.1, but mpl require 56.*

Although that may not explain missing lib error

alimanfoo commented 7 years ago

Yeah missing lib error suggests some package has a dependency on icu 54 which hasn't been properly declared, but icu 56 gets installed because that's what r-base, matplotlib, qt etc. explicitly declare.

On Wednesday, February 1, 2017, Nick Harding notifications@github.com wrote:

Seems to be with icu. We can go up to 58.1, but mpl require 56.*

Although that may not explain missing lib error

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cggh/biipy/pull/43#issuecomment-276644482, or mute the thread https://github.com/notifications/unsubscribe-auth/AAq8QtFtXQJhoqT7qVReHEr96b8a7TXfks5rYHjvgaJpZM4Ly9_5 .

-- Alistair Miles Head of Epidemiological Informatics Centre for Genomics and Global Health http://cggh.org The Wellcome Trust Centre for Human Genetics Roosevelt Drive Oxford OX3 7BN United Kingdom Email: alimanfoo@googlemail.com Web: http://purl.org/net/aliman Twitter: https://twitter.com/alimanfoo Tel: +44 (0)1865 287721

alimanfoo commented 7 years ago

Changing channel priority does not fix the problem, r-base still ends up getting installed from conda-forge.

I tried manually installing r-base from the r channel, it looks like the dependencies are different from conda-forge. r-base=3.3.2 from r channel depends on icu 54, wherease r-base=3.3.2 from conda-forge depends on icu 56. I wonder if some other parts of r just assume icu 54 because that's where the current r-base package is at on the r channel, but then if r-base gets installed from conda-forge then icu 54 is obviously missing.

I can't see any easy way to resolve this, other than waiting for the r channel to upgrade it's icu dependency. If we force r-base to install from r channel then currently it will downgrade icu to 54 which will force downgrade of matplotlib etc.

hardingnj commented 7 years ago

Some people have reported a workaround by symlinking 56 > 54, but not a good fix.

alimanfoo commented 7 years ago

Sounds like a bad idea to me!

On Wednesday, February 1, 2017, Nick Harding notifications@github.com wrote:

Some people have reported a workaround by symlinking 56 > 54, but not a good fix.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cggh/biipy/pull/43#issuecomment-276652826, or mute the thread https://github.com/notifications/unsubscribe-auth/AAq8QjTmAbDGxX8LdhMsTiJNQYkorPNfks5rYIOVgaJpZM4Ly9_5 .

-- Alistair Miles Head of Epidemiological Informatics Centre for Genomics and Global Health http://cggh.org The Wellcome Trust Centre for Human Genetics Roosevelt Drive Oxford OX3 7BN United Kingdom Email: alimanfoo@googlemail.com Web: http://purl.org/net/aliman Twitter: https://twitter.com/alimanfoo Tel: +44 (0)1865 287721

alimanfoo commented 7 years ago

Seems like we've stumbled into a bit of a rat's nest: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/myBjZaaAoDI

Doesn't look like there's an easy solution for the moment.

mingwandroid commented 7 years ago

Symlinking ICU is actually not very risky. IMHO ICU shouldn't bother with versioned shared libraries since their interface doesn't change in incompatible ways.

alimanfoo commented 7 years ago

Thanks Ray, very useful to know.

On Monday, February 6, 2017, Ray Donnelly notifications@github.com wrote:

Symlinking ICU is actually not very risky. IMHO ICU shouldn't bother with versioned shared libraries since their interface doesn't change in incompatible ways.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cggh/biipy/pull/43#issuecomment-277631452, or mute the thread https://github.com/notifications/unsubscribe-auth/AAq8QthtwMk0ynXJmJHejN90Ldl30cQEks5rZusegaJpZM4Ly9_5 .

-- Alistair Miles Head of Epidemiological Informatics Centre for Genomics and Global Health http://cggh.org The Wellcome Trust Centre for Human Genetics Roosevelt Drive Oxford OX3 7BN United Kingdom Email: alimanfoo@googlemail.com Web: http://purl.org/net/aliman Twitter: https://twitter.com/alimanfoo Tel: +44 (0)1865 287721