[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 2 problems running Heatbugs
From: |
pauljohn |
Subject: |
Re: 2 problems running Heatbugs |
Date: |
Tue, 21 Aug 2001 08:07:10 -0500 |
address@hidden wrote:
>
> Dear Swarm-Support:
>
> I am able to install Swarm in the following situation:
>
> RedHat Linux 7.0.1 on an Intel platform, with all current updates
> gcc 3.0.1 (using a CVS archive), installed in /usr/local/gcc3
> Blackdown Sun JDK 1.3.1
> HDF5 installed at /usr/local/hdf5
>
> Swarm itself is installed at /usr/local/swarm.
>
> When trying to run heatbugs, I have two problems:
>
> 1) I am getting 11 warnings about dynamic symbols, once in the
> "make", and again for each execution of the compiled program.
> They appear to be related to entries in HeatbugObserverSwarm.h
> and HeatbugObserverSwarm.m.
>
> Is there a way to avoid these warnings?
Those are the "same old" warnings. Marcus worked out a patch for
gcc-3.0 and I used it when I built gcc and there are no swarm
warnings with that. However, I took a more recent snapshot of
gcc and the patch will not apply, and, frankly, I gave up trying
to figure it out. Maybe you can. There were a few changes to
gcc that Marcus had sent me, and I don't have the individual
patches, I have now only a single patch that makes all the
changes from original to final:
http://lark.cc.ukans.edu/~pauljohn/Swarm/Marcus_combo_objc_gcc3.0.patch
If you find what changes are necessary to patch gcc-3.0.1,
please post your patch.
Since the warnings are just warnings, that part of the problem
is not so urgent. However, there is a part of this patch that
accelerates message calling in the Swarm build itself.
>
> 2) In order to compile, I seem to have to specify
> EXTRALDFLAGS="-rpath /usr/local/gcc3/lib".
This is the reason that I built my last gcc rpms with the
/usr/local path, rather than /usr/local/gcc3. In RedHat 7.2,
they are planning to dump it into /usr with an executable named
gcc3, along side gcc-2.96.
Anyway, In RedHat, you have many ways to tell where libraries
will be. Don't expect Swarm to do it. First, edit
/etc/ld.so.conf and add a path there, then run /sbin/ldconfig.
Second, do this in the environment:
export LD_LIBRARY_PATH=/usr/local/gcc3/lib:$LD_LIBRARY_PATH
Third, do what you did.
> I feel this flag is burdensome for end-users,
If your end-users can compile gcc3, this hardly seems burdensome
to me. My end users have gcc in /usr/local and so, as long as
their system has the standard element /usr/local/lib in the
/etc/ld.so.conf, then all is well.
>
> /usr/bin/ld: warning: type and size of dynamic symbol
> `__objc_class_name_SwarmObject' are not defined
Same old warnings. If you build swarm with a patched gcc, and
then give swarm rpms to other users, they can compile swarm
programs with the garden variety gcc and not see the warnings.
--
Paul E. Johnson email: address@hidden
Dept. of Political Science
http://lark.cc.ukans.edu/~pauljohn
University of Kansas Office: (785) 864-9086
Lawrence, Kansas 66045 FAX: (785) 864-5700
==================================
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.