On Thu, Apr 29, 2010 at 09:28:40PM -0500, Alex Elder wrote:
> On Fri, 2010-04-30 at 11:26 +1000, Dave Chinner wrote:
> > On Thu, Apr 29, 2010 at 06:46:11AM -0400, Christoph Hellwig wrote:
> > > Spoken too soon. While this second patch at least compiles on my Debian
> > > testing system it doesn't link:
> > >
> > > /tmp/ccWcHXtY.o: In function `CleanupDbmLookup':
> > > /root/xfstests-dev/src/dbtest.c:304: undefined reference to `dbm_close'
> > > /tmp/ccWcHXtY.o: In function `DoDbmLookup':
> > > /root/xfstests-dev/src/dbtest.c:220: undefined reference to `dbm_fetch'
> > > /root/xfstests-dev/src/dbtest.c:264: undefined reference to `dbm_fetch'
> > > /tmp/ccWcHXtY.o: In function `InitDbmLookup':
> > > /root/xfstests-dev/src/dbtest.c:144: undefined reference to `dbm_open'
> > > /root/xfstests-dev/src/dbtest.c:178: undefined reference to `dbm_store'
> > > /root/xfstests-dev/src/dbtest.c:191: undefined reference to `dbm_close'
> > > /root/xfstests-dev/src/dbtest.c:196: undefined reference to `dbm_open'
> > > collect2: ld returned 1 exit status
> > > make: *** [dbtest] Error 1
> > > make: *** [src] Error 2
> > > make: *** [default] Error 2
> > Where is libgdbm-compat on your system?
> I think we need to do a better job of defining what's required
> for this stuff--building and running.
autoconf is supposed to handle that. If you don't have a critical
package, autoconf will fail and ask you to install it. For
non-critical packages or libraries, it just compiles it out. The
above error indicates that my autoconf changes are not detecting the
libgdbm_compat library correctly (no surprise, I just hacked a hack
to make it work on my system) so once that is sorted dbtest won't
even be built unless the libraries are installed and detected.
FWIW, Christoph, does the problem go away with a 'make distclean;
> I know I had trouble the first time I set things up, and now that
> it works I have no recollection of the stuff that I did. It would
> be good to make it easier for people to get testing going, we
> might get more people actually running them in a wider variety of
A real source package for xfstests is the right way to do this, I
think. That way installing the package can pull in the correct
dependencies before you try to build it. There's only so much we
can do if all you do is a git clone to install it...