[egenix-users] Cannot build debug version of mx-base

M.-A. Lemburg mal at egenix.com
Mon Nov 30 12:31:17 CET 2009


Phil Rooke wrote:
> "M.-A. Lemburg" <mal at egenix.com> writes:
> 
>> I guess something is broken in Apple's tar.
> 
> Thanks for the quick reply.  Taking your hint I tried again but starting
> with the .zip rather than the .tar.gz download and that has worked
> perfectly from what I can see - the install worked and running my script
> has produced 2 mx* log files.
> 
> For the record, on Mac OS X 10.5.8 with:
> 
> [egenix-mx-base-3.1.2] $ which tar
> /usr/bin/tar
> [egenix-mx-base-3.1.2] $ tar --version
> tar (GNU tar) 1.15.1
> 
> did not work.  The .zip archive seems fine.
> 
> Thanks again for your help.

Further investigation has revealed the real cause of the problem
(I think):

This is not related to tar or zip, it's related to running the
setup.py script twice within the same extracted source archive.

The first time runs through fine, the second time you get the
error. This appears to be related to the build pickle that we
use to save build information between runs:

First run (without error):

running mx_autoconf
checking for availability of strptime()
gcc -fno-strict-aliasing -g -O3 -Wall -Wstrict-prototypes -D_GNU_SOURCE=1
-I/usr/local/python-2.6-ucs2/include -c _configtest.c -o _configtest.o
gcc _configtest.o -L/usr/local/python-2.6-ucs2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking compiler for bad static forward handling
gcc -fno-strict-aliasing -g -O3 -Wall -Wstrict-prototypes -D_GNU_SOURCE=1
-I/usr/local/python-2.6-ucs2/include/python2.6 -I/usr/local/python-2.6-ucs2/include -c _configtest.c
-o _configtest.o
success!
removing: _configtest.c _configtest.o
enabling mx debug support
macros to define: [('HAVE_STRPTIME', '1'), ('MAL_DEBUG', None)]
macros to undefine: []
no build data file 'build/build-py2.6_ucs2.pck' found

Second run (with error and using the build pickle created by the
first run):

running mx_autoconf
checking for availability of strptime()
gcc -fno-strict-aliasing -g -O3 -Wall -Wstrict-prototypes -D_GNU_SOURCE=1
-I/usr/local/python-2.6-ucs2/include -c _configtest.c -o _configtest.o
gcc _configtest.o -L/usr/local/python-2.6-ucs2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking compiler for bad static forward handling
gcc -fno-strict-aliasing -g -O3 -Wall -Wstrict-prototypes -D_GNU_SOURCE=1
-I/usr/local/python-2.6-ucs2/include/python2.6 -I/usr/local/python-2.6-ucs2/include -c _configtest.c
-o _configtest.o
success!
removing: _configtest.c _configtest.o
enabling mx debug support
macros to define: [('HAVE_STRPTIME', '1'), ('MAL_DEBUG', None)]
macros to undefine: []
found usable build data file 'build/build-py2.6_ucs2.pck'
skipping the build process and reusing the existing build files and data
setting platform to 'macosx-10.5-i386'
restoring build data from a previous build run
Traceback (most recent call last):
  File "setup.py", line 16, in <module>
    mxSetup.run_setup(configurations)
  File "/Users/lemburg/tmp/egenix-mx-base-3.1.2/mxSetup.py", line 3505, in run_setup
    apply(setup, (), kws)
  File "/usr/local/python-2.6-ucs2/lib/python2.6/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/local/python-2.6-ucs2/lib/python2.6/distutils/dist.py", line 975, in run_commands
    self.run_command(cmd)
  File "/usr/local/python-2.6-ucs2/lib/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "/Users/lemburg/tmp/egenix-mx-base-3.1.2/mxSetup.py", line 937, in run
    build_ext.ensure_finalized()
  File "/usr/local/python-2.6-ucs2/lib/python2.6/distutils/cmd.py", line 117, in ensure_finalized
    self.finalize_options()
  File "/Users/lemburg/tmp/egenix-mx-base-3.1.2/mxSetup.py", line 1702, in finalize_options
    build_ext.finalize_options(self)
  File "/usr/local/python-2.6-ucs2/lib/python2.6/distutils/command/build_ext.py", line 254, in
finalize_options
    defines = self.define.split(',')
AttributeError: 'list' object has no attribute 'split'

FWIW, this appears to be fixed in a later version of mxSetup.py which is
included in the latest snapshot of egenix-mx-base:

http://downloads.egenix.com/python/egenix-mx-base-3.2.0_20091006.zip

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Nov 30 2009)
>>> Python/Zope Consulting and Support ...        http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/
________________________________________________________________________

::: Try our new mxODBC.Connect Python Database Interface for free ! ::::


   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611
               http://www.egenix.com/company/contact/



More information about the egenix-users mailing list