Where to put dev libs?

der.hans plug-discuss@lists.PLUG.phoenix.az.us
Fri, 25 May 2001 17:53:54 -0700 (MST)


Am 25. May, 2001 schwäzte Eric Richardson so:

> I'm trying to compile a program gbonds on Debian stable. I've installed
> the libxxx-dev packages needed and since libgnome was too old, 1.0.56
> instead of 1.2.xx, I downloaded the source from testing and compiled it.
> So far so good.

Could you just use libgnome from testing? Using the configged apt-test I
posted last week allows you to not dirty your stable package lists.

BTW, apt-get can now handle specifying dist, e.g.:

apt-get install libgnome/testing

I haven't used this yet, so don't know what the implications are. I'm
currently building a test machine to make sure they're exhibiting sane
behavoir before relying on this new feature :).

> Now I don't have a clue on how to package it or whether I should just do
> a make install and forget it. The second idea sort of breaks the Debian
> way and could overwrite header and libs that are needed by the current
> machine etc.
> 
> I could copy the libs and headers into the gbonds directory to compile
> so the -I. or -L. compiler options can pick them up or I could do a
> ./configure --prefix=PATH so the libs and headers go elsewhere but then
> the gbonds make won't work.

If not making a .deb you'd want to use /usr/local. You can get gbonds to
work by loading the lib before starting gbonds. Don't remember what var it
is that needs to be set, though :(. Used to need it for Netscape. Looks like
we still do. Look for $LD_PRELOAD in the wrapper script, I think that's what
you need.

There are two ways to set $LD_PRELOAD before running gbonds without muddying
the rest of your environment. One is the way Netscape does it, e.g. write a
script that sets it and calls gbonds.

LD_PRELOAD=/usr/local/lib/libgnome.so.1.2 gbonds

Another way ( that is supposed to work, is ultra-cool and untested by me :)
is to setup a gbonds file in /etc/default. The files in /etc/default are
supposed to be loaded prior to running a program. Looks like that has to be
supported by the package itself, though. See /etc/init.d/rcS on a debian
system for an example.

ciao,

der.hans
-- 
# der.hans@LuftHans.com home.pages.de/~lufthans/ www.DevelopOnline.com
#  If you're not learning, you're not living. - der.hans