Re: coexisting libfoo1-dev and libfoo2-dev (was: gmp and -dev version conflict/compatibility)
On Sat, Feb 10, 2001 at 01:02:26PM +0000, Dale Scheetz wrote:
> Way back when gmp was version 1.x and the 2.x version just came out, I had
> a special reqest from another software developer, that he be able to
> install both the old gmp1-dev and the newer gmp2-dev in such a way that he
> could work on one piece of software that required qualities of gmp1 that
> were not available in gmp2 at the same time that all other packages would
> get built against gmp2. So I created subdirectories (gmp1/) in all the
> places that -dev elements were placed for gmp1, while puting the elements
> of gmp2 in the more open locations. Thus unmodified packages would build
> against gmp2 and specialty packages could be pointed at the gmp1
> subdirectories for their desired elements.
>
> I've heard nothing more back from that developer, and I'm begining to
> wonder if I did him or myself any favors ;-)
>
> I believe that most other libraries (I've only looked at Tk/Tcl packages)
> simply conflict with each other at the -dev level while being cohabitable
> at the shared library level by use of proper .so names.
Having the two -dev packages conflict sounds OK to me. It is easier
to package this way, I suspect, and the more common case is that the
old version will die away.
When I needed to have two -dev packages coexist (it was gmp2 and gmp3,
incidentally), I was able to install the new version normally,
and put the old one in a special place using:
dpkg --extract libgmp2... /usr/local/gmp2
dpkg --extract libgmp2-dev... /usr/local/gmp2
cd /usr/local/gmp2
mv usr/* .
rmdir usr
We compile against the old library using:
-I/usr/local/gmp2/include
and -L/usr/local/gmp2/lib
This seems like a universal solution to conflicting -dev packages.
-Steve
Reply to: