[Python-bugs-list] [ python-Bugs-478428 ] dbm build fails

noreply@sourceforge.net noreply@sourceforge.net
Mon, 10 Dec 2001 07:34:13 -0800


Bugs item #478428, was opened at 2001-11-05 12:24
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=478428&group_id=5470

Category: Macintosh
Group: Python 2.2
Status: Closed
Resolution: None
Priority: 5
Submitted By: John Buell (dadaist)
Assigned to: Jack Jansen (jackjansen)
Summary: dbm build fails

Initial Comment:
Trying a build with cvs source downloaded this morning.
I've been sure to do the configure --with-suffix=_ on
case-insensitive Mac OS X (10.1), but I'm having some
problem with the 'dbm' module.

Here's a copy of the messages:

building 'dbm' extension
/Users/jbuell/Documents/Python/python/dist/src/Modules/dbmmodule.c:
In function `dbm_subscript':
/Users/jbuell/Documents/Python/python/dist/src/Modules/dbmmodule.c:104:
warning: implicit declaration of function `dbm_error'
/Users/jbuell/Documents/Python/python/dist/src/Modules/dbmmodule.c:105:
warning: implicit declaration of function `dbm_clearerr'
cc -g -O3 -Wall -Wstrict-prototypes -no-cpp-precomp -I.
-I/Users/jbuell/Documents/Python/python/dist/src/./Include
-I/Users/jbuell/Documents/Python/python/dist/src/./Mac/Include
-I/usr/local/include -IInclude/ -c
/Users/jbuell/Documents/Python/python/dist/src/Modules/dbmmodule.c
-o build/temp.darwin-1.4-Power Macintosh-2.2/dbmmodule.o
cc -bundle -flat_namespace -undefined suppress
build/temp.darwin-1.4-Power Macintosh-2.2/dbmmodule.o
-L/usr/local/lib -o build/lib.darwin-1.4-Power
Macintosh-2.2/dbm.so
building 'gdbm' extension
dyld: ./python_ Undefined symbols:
__ashldi3
make: *** [sharedmods] Error 67

Any suggestions? Anything I can change in my settings
to get past this?

-John

----------------------------------------------------------------------

>Comment By: John Buell (dadaist)
Date: 2001-12-10 07:34

Message:
Logged In: YES 
user_id=368337

Well, I thought I'd reinstall the developer tools, but
decided no, why not move this gdbm.h from /usr/local/include
to /tmp ? That did it. It did the entire make and make
install without a hitch. However, shouldn't Python be able
to build _with_ a gdbm.h file? Is mine just out of date?
I'm going to attach it this time.

-John

----------------------------------------------------------------------

Comment By: Jack Jansen (jackjansen)
Date: 2001-12-05 15:15

Message:
Logged In: YES 
user_id=45365

John,
not so on my iBook (10.1.1, devtools installed), so I'm 99% sure that the gdbm.h you have in /usr/include is also the result of something you installed....

----------------------------------------------------------------------

Comment By: John Buell (dadaist)
Date: 2001-12-05 08:13

Message:
Logged In: YES 
user_id=368337

Okay, further checking shows that the beige G3 does NOT have
a gdbm.h ANYWHERE, while the iBook does. No wonder it
succeeds on the one and not on the other.

[localhost:/Users/jbuell] root# ls -l `find / -name gdbm.h
-print`
-rw-r--r--  1 root  admin  4744 Oct  1 02:54 /sw/include/gdbm.h
-rw-r--r--  1 root  wheel  4744 Feb 27  2001
/usr/local/include/gdbm.h

I can include a copy of this gdbm.h if necessary. I'm
wondering if it's from an older version that is breaking the
python 2.2 build? Where in the build/make trees could I go
to comment this out?

----------------------------------------------------------------------

Comment By: Jack Jansen (jackjansen)
Date: 2001-12-04 03:21

Message:
Logged In: YES 
user_id=45365

The problem isn't with /sw, it's with the gdbm.h that is
installed in /usr/local/include. This is what triggers
setup.py to try and build gdbm. The other questrion is of
course why it doesn't work: if you have gdbm.h and libgdbm
there's really no reason why it shouldn't build.

----------------------------------------------------------------------

Comment By: John Buell (dadaist)
Date: 2001-12-03 09:29

Message:
Logged In: YES 
user_id=368337

Sorry, I've been busy. I've narrowed it down to being a
fink-related problem. My beige G3 without fink can build and
install python 2.2 just fine. The iBook WITH fink is what
doesn't like the gdbm thing. The odd part is that the fink
directories (/sw/*) are NOT part of my path while I'm doing
builds, but gdbm seems to be finding the extra files anyway.

bash-2.05$ echo $PATH
~/bin/powerpc-apple-darwin:/Users/jbuell/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/X11R6/bin

[localhost:/Users/jbuell] root# find / -name libgdbm.a -print
/sw/lib/libgdbm.a
/usr/local/lib/libgdbm.a
[localhost:/Users/jbuell] root# find / -name gdbm.h -print
/sw/include/gdbm.h
/usr/local/include/gdbm.h

Other than uninstalling fink, is there a way to get python's
build mechanism to completely ignore /sw and its subdirectories?

----------------------------------------------------------------------

Comment By: Jack Jansen (jackjansen)
Date: 2001-12-02 14:15

Message:
Logged In: YES 
user_id=45365

As the originator didn't follow up on my previous remark and everything works fine for me I'm closing this bug.


----------------------------------------------------------------------

Comment By: Jack Jansen (jackjansen)
Date: 2001-11-06 12:45

Message:
Logged In: YES 
user_id=45365

Note that the problem is with gdbm, not with dbm. Dbm seems to build fine (with a warning).

I've heard a report of this before. Needless to say, for me there is no problem whatsoever:-)

I think that the problem is that setup.py detects files that indicate to it that dbm is available while in
fact it is not. Could you check whether you have a libgdbm.a and/or a gdbm.h on your system somewhere?


----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=478428&group_id=5470