swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Installing and using swarm 1.3 on SuSE 5.2


From: Lorenz Gygax
Subject: Re: Installing and using swarm 1.3 on SuSE 5.2
Date: Fri, 9 Oct 1998 09:32:20 +0200 (MEST)

Dear Paul and all others,

> Go into your heatbugs directory and type: ldd heatbugs
> this will list the shared libraries your app is using.  Highly likely
> the correct ones are not being used.

How do I do that? If my make in heatbugs crashes it doesn't create the
file heatbugs and thus I can't ldd it. 

> It is a dicey situation to have 2 versions of tcl/tk installed on one
> system.  If you can just delete all except 8.0p2 or newer, you will be
> save. You'll have to recompile swarm (possibly blt), but it will be ok. 

That would be ideal I guess, but as far as I understand it, I still need
the older versions for some of the programs.

> Some programs may still look for the old tcl/tk, so you may need to keep
> both. This was a problem for me in the past because Redhat was
> distributed with tcl/tk8.0 but at the time swarm wanted older tcl/tk. 
> In some notes on installing Swarm 1.1, I wrote down all kinds of
> gyrations required to control the usage of 2 tcl/tk versions. One
> version had to be installed in /usr and the other in /usr/local. Then
> you have to be super careful in setting paths for blt and swarm.  I've
> still got a copy of that stuff linked from the "old static Swarm FAQ" on
> my homepage.  http://lark.cc.ukans.edu/~pauljohn (look for the button
> that says Swarm FAQ, as opposed to "swarm online faq" which is the newer
> stuff.

Now, more or less following the old static FAQ, that is what I did (I
always ran make uninstall's, distclean's, clean's first after I had messed
up something): 

- I got the tcl/tk sources Version 8.0.3
- I installed tcl and tk in /usr/local (no other Version of tcl/tk there)
- I recompiled blt with (all on one line):
    ./configure --prefix=/usr/local --with-tcl=/usr/local 
                --with-tk=/usr/local --with-cc=gcc
- In the swarm distribution directory I ran (all on one line):
    ./configure --with-defaultdir=/usr/local --with-tcldir=/usr/local
                --with-bltdir=/usr/local/blt --with-pngdir=/usr/X11R6
                --with-tcllibname=libtcl.so --with-tklibname=libtk.so 
                --with-pngincludedir=/usr/X11R6/include
(Strange thing here, it would only consider --with-pngincludedir if this
is at the end of the command-line ...)
- Then make
- Then make install
- Then I cd into the swarmapps/heatbugs and run make. It seems to get
further than before but I still get the following: 

Xpm -lX11 -lm -lobjc -ldl
/usr/X11R6/lib/libBLT.a(tkButton.o): In function `DisplayButton':
/other/SWARM-needed/blt/blt2.4f/src/tkButton.c:1516: undefined reference
to `TkDisplayText'
/usr/X11R6/lib/libBLT.a(tkButton.o): In function `ComputeButtonGeometry':
/other/SWARM-needed/blt/blt2.4f/src/tkButton.c:1716: undefined reference
to `TkComputeTextGeometry'
/usr/X11R6/lib/libBLT.a(bltBgexec.o): In function `CloseSink':
/other/SWARM-needed/blt/blt2.4f/src/bltBgexec.c:1019: undefined reference
to `Tcl_FreeFile'
/usr/X11R6/lib/libBLT.a(bltBgexec.o): In function `CreateSinkHandler':
/other/SWARM-needed/blt/blt2.4f/src/bltBgexec.c:1178: undefined reference
to `Tcl_GetFile'
[etc ....]

Can that have something to do with (which I don't really understand):

----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/lib

To link against installed libraries in a given directory, LIBDIR,
you must use the `-LLIBDIR' flag during linking.

## Is that something that happens in the Makefiles or the swam
applications? Do I have to worry about it?

 You will also need to do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking

## ok, that I can do

   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag

## ???

   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

## /usr/local/lib is in /etc/ld.so.conf

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------


Thanks for any further thoughts and ideas!

Regards, Lorenz


                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.
                  ==================================


reply via email to

[Prev in Thread] Current Thread [Next in Thread]