Gentoo Archives: gentoo-dev

From: Dave Lee <davel@××××××.com>
To: gentoo-dev@g.o
Cc: gentoo-user@g.o
Subject: [gentoo-dev] Re: portage compile problem (xemacs)
Date: Sat, 06 Apr 2002 14:46:01
Message-Id: Pine.SGI.4.21.0204061340000.16201145-100000@the-gimp
In Reply to: [gentoo-dev] portage compile problem (xemacs) by Dave Lee
1 so in answer to my own question, the reason ./configure was failing is
2 because I had gpm in my USE variable and so when ./configure was doing its
3 tests it was adding -lgpm to the gcc command line, and failing to find
4 libgpm, and not libgdbm. great.
5
6 Dave Lee wrote:
7 > So I was trying to compile xemacs and ./configure failed, here is there
8 > error message
9 >
10 > [snip]
11 > checking for dbm_open in -lgdbm... no
12 > Error: Required GNU DBM support cannot be provided.
13 >
14 > !!! ERROR: The ebuild did not complete successfully.
15 > [snip]
16 >
17 > I do have gdbm, though
18 >
19 > mj xemacs # qpkg -f /usr/lib/libgdbm.so
20 > sys-libs/gdbm-1.8.0-r4 *
21 >
22 > when I look in
23 > /var/tmp/portage/xemacs-21.1.14/work/xemacs-21.1.14/config.log
24 > it seems that gcc is only being passed -L/usr/X11R6/lib so I assume this
25 > is why ./configure cant find "dbm_open in -lgdbm"
26 >
27 > why is this happening? why cant portage find libgdbm? I tried editing
28 > the xemacs ebuild file to remove the gdbm option to ./configure but then
29 > ./configure failes when looking for dl_open and says the C compiler is
30 > broken.
31 >
32 > any help is much appreciated.
33 > Dave
34 >
35 > here is the relevant portion in config.log
36 >
37 > configure:11451: checking for dbm_open in -lgdbm
38 > configure:11467: gcc -o conftest -march=i686 -O3 -pipe
39 > -I/usr/X11R6/includ
40 > e -L/usr/X11R6/lib conftest.c -lgdbm -lXm -ltiff -lpng -ljpeg
41 > -lz -lXp
42 > m -lXmu -lXt -lXext -lX11 -lSM -lICE -lgpm -lncurses -lm -lgcc -lc
43 > -lgcc /us
44 > r/lib/crtn.o 1>&5
45 > /usr/i686-pc-linux-gnu/bin/ld: cannot find -lgpm
46 > collect2: ld returned 1 exit status
47 > configure: failed program was:
48 > #line 11456 "configure"
49 > #include "confdefs.h"
50 > /* Override any gcc2 internal prototype to avoid an error. */
51 > /* We use char because int might match the return type of a gcc2
52 > builtin and then its argument prototype would still apply. */
53 > char dbm_open();
54 >
55 > int main() {
56 > dbm_open()
57 > ; return 0; }
58 >
59 >