This is the mail archive of the cygwin@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: xemacs link problem


Guansong Zhang wrote:
> 
> This package contains the header file. I don't think it is in 1.1.2. So,
> what should I do? I should not just rename the header, should I? it seems
> there is a dynamic lib there, as dll. Maybe that is why xemacs can not find
> it?
> 

A-HA! I shoulda remembered this -- gdbm is one of 'my' packages.  This
wasn't a 'libdb' problem at all -- it's a libdbm problem! Here's the
deal:

libgdbm can masquerade as libdbm, and as libndbm.  So, it provides
'compatibility headers' dbm.h and ndbm.h.  However, during the link
phase, you must link to -lgdbm not -ldbm. 

XEmacs found dbm.h, and included the database code in its build.
However, it tried to link to -ldbm and failed.  There are a couple of
ways around this:

1) 'export LDFLAGS=-lgdbm' before configuring
2) (maybe) cp /usr/lib/libgdbm.dll.a /usr/lib/libdbm.dll.a
3) rename /usr/include/dbm.h to something else (dbm.foo?)

> By the way, why xemacs need it?

It doesn't. Database management integration is an optional feature,
which configure is helpfully including for you.

--Chuck

> 
> Thanks,
> 
> Guansong
> 
> /contrib/gdbm/gdbm-1.8.0-2.tar.gz
> drwxrwxr-x cwilson/None      0 2000-08-13 14:34 usr/
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/bin/
> -rwxr-xr-x cwilson/None   6144 2000-08-13 14:35 usr/bin/conv2gdbm.exe
> -rwxr-xr-x cwilson/None  17920 2000-08-13 14:35 usr/bin/libgdbm.dll
> -rwxr-xr-x cwilson/None   5120 2000-08-13 14:35 usr/bin/testdbm.exe
> -rwxr-xr-x cwilson/None  12288 2000-08-13 14:35 usr/bin/testgdbm.exe
> -rwxr-xr-x cwilson/None   5120 2000-08-13 14:35 usr/bin/testndbm.exe
> drwxrwxr-x cwilson/None      0 2000-08-13 14:34 usr/doc/
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/doc/Cygwin/
> -rw-r--r-- cwilson/None   2811 2000-08-13 14:35
> usr/doc/Cygwin/gdbm-1.8.0.README
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/doc/gdbm-1.8.0/
> -rw-r--r-- cwilson/None   2916 2000-08-13 14:35 usr/doc/gdbm-1.8.0/NEWS
> -rw-r--r-- cwilson/None   1766 2000-08-13 14:35 usr/doc/gdbm-1.8.0/README
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/include/
> -rw-r--r-- cwilson/None   2603 2000-08-13 14:35 usr/include/dbm.h
> -rw-r--r-- cwilson/None   5925 2000-08-13 14:35 usr/include/gdbm.h
> -rw-r--r-- cwilson/None   3078 2000-08-13 14:35 usr/include/ndbm.h
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/info/
> -rw-r--r-- cwilson/None  25864 2000-08-13 14:35 usr/info/gdbm.info
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/lib/
> -rw-r--r-- cwilson/None  37520 2000-08-13 14:34 usr/lib/libgdbm.a
> -rw-r--r-- cwilson/None  21294 2000-08-13 14:35 usr/lib/libgdbm.dll.a
> drwxrwxr-x cwilson/None      0 2000-08-13 14:34 usr/man/
> drwxrwxr-x cwilson/None      0 2000-08-13 14:35 usr/man/man3/
> -rw-r--r-- cwilson/None  14757 2000-08-13 14:35 usr/man/man3/gdbm.3
> ----- Original Message -----
> From: "Charles Wilson" <cwilson@ece.gatech.edu>
> To: "Guansong Zhang" <guansong@hotmail.com>
> Sent: Friday, September 08, 2000 1:54 PM
> Subject: Re: xemacs link problem
> 
> > Well then, we need to figure out where /usr/include/dbm.h came from.
> > It's not in the main cygwin-1.1.4.tar.gz package.  Are there any
> > comments at the beginning of the dbm.h file that indicate where it came
> > from?
> >
> > I *think* the solution is to remove /usr/include/dbm.h (or at least
> > rename it to something innocuous so that xemacs configure won't find
> > it.  But, I hesitate to encourage that until we know *why* its on your
> > system but the libraries aren't.
> >
> > --Chuck
> >
> >
> >
> > Guansong Zhang wrote:
> > >
> > > I do find . -name libdb\* in root, no such file at all.
> > >
> > > It seems I never install this package, for some reason my download does
> not
> > > include it?
> > >
> > > I don't know any thing about Micheal's alpha version. But I do install
> two
> > > local lib(libpng and zlib, I suspected them once and recompile and
> install
> > > both of them after I install 1.1.4)
> > >
> > > Thanks,
> > >
> > > Guansong
> > >
> > > ----- Original Message -----
> > > From: "Charles Wilson" <cwilson@ece.gatech.edu>
> > > To: "Guansong Zhang" <guansong@hotmail.com>
> > > Cc: <cygwin@sources.redhat.com>
> > > Sent: Friday, September 08, 2000 1:17 PM
> > > Subject: Re: xemacs link problem
> > >
> > > > Do this:
> > > >   'ls /usr/lib/libdb*'
> > > >   'ls /usr/bin/libdb*'
> > > >   'ls /usr/local/lib/libdb*'
> > > >   'ls /usr/local/bin/libdb*'
> > > >
> > > > Your 'cygwin version' 1.1.2 or 1.1.4 does not matter.  This is not a
> > > > cygwin problem.  It's a problem with the libdb package(s).  If the
> > > > xemacs configure finds the header files for libdb, it will include
> libdb
> > > > in the build process. If xemacs configure does not find the libdb
> header
> > > > files, it will not include libdb in the build process.
> > > >
> > > > Obviously, in the past you did not have libdb installed at all (or
> only
> > > > had one version of libdb), so xemacs did not include libdb in the
> build
> > > > process (or, if it did, there was no conflict between different
> versions
> > > > of libdb because you only had one version installed).
> > > >
> > > > Now, it appears that you have TWO versions of libdb installed, and
> they
> > > > are conflicting.  The solution, of course, is to remove one of them.
> > > >
> > > > An alternate explanation is that you have recently installed Michael's
> > > > version (and have never had the cygutils version installed) but that
> > > > Michael's version is somehow broken.  It is, after all, an alpha
> > > > release.
> > > >
> > > > --Chuck
> >

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]