On Fri, Sep 05, 2014 at 09:48:36AM +0200, Christoph Berg wrote:
> Re: Robert Stone 2014-09-03 <20140903210016.GE74405@Robert-Stone.local>
> > In the plr package (version 1:8.3.0.15-3.pgdg10.4+1) it seems
> > like the debian/postinst file is not making it into the .deb files and
> > that has caused a bug fix by version 1:8.3.0.8-2 to resurface. The
> > runtime linker is unable to find libR.so.
> >
> > To recover the postinst script, I had success adding:
> >
> > override_dh_installdeb:
> > for i in `pg_buildext supported-versions` ; \
> > do cp debian/postinst debian/postgresql-$$i-plr.postinst ; \
> > done
> > dh_installdeb
> >
> > to the debian/rules file. I also noticed that there is no corresponding
> > postrm to undo the effects of the postinst script.
>
> Oh, excellent catch! This bug is only present on lucid, as newer
> Ubuntu/Debian dists all have this symlink in r-base-core. Our package
> tests didn't notice because we test all .deb files in one run and as
> the first package in debian/control uses debian/postinst, the symlink
> will be there.
>
> > There are certainly other ways to solve this linking issue,
> > adding an rpath to plr.so seems reasonable. This could be done by
> > adding "-Wl,-rpath$(r_libdir2x)" to the SHLIB_LINK value in the
> > Makefile at the cost of trigging a "binary-or-shlib-defines-rpath"
> > lintian warning during Debian package builds. It seems like Debian's
> > general stance against rpaths may not be applicable in this case.
>
> It's a bug in r-base-core which should really be fixed there, but I'm
> not going to try to get it fixed in lucid, so adding this symlink
> workaround which will only trigger on lucid seems appropriate, while
> an rpath would be present in packages for all distributions.
>
> I've added your patch to the plr package. It's rebuilding atm, I'll
> promote the packages shortly. Thanks for the report!
>
This all makes perfect sense. Thanks for your help!
-Robert