[DB-SIG] Where is mxDateTime.h Hiding?

M.-A. Lemburg mal@lemburg.com
Thu, 19 Apr 2001 09:42:56 +0200


kromag@nsacom.net wrote:
> 
> Hi folks,
> 
> I am having some difficulties in getting mxDateTime.h to install properly and
> psycopg to compile on my slackware linux system. I have Python2.1b2,
> PostGreSQL 7.0.3 and egenix-base.2.0.0 installed.
> 
> I attempt configure with the following:
> 
> doug:~/psycopg-0.5.1$ ./configure --with-mxdatetime-
> includes=/usr/local/lib/python2.1/site-packages/mx/DateTime/mxDateTime --with-
> postgres-libraries=/usr/local/pgsql/lib --with-postgres-
> includes=/usr/local/pgsql/include --enable-devel=yes
> 
> which gives me:
> 
> ----stuff removed-----
> 
> checking for main in -lcrypt... yes
> Warning: next test can fail because of a missing libcrypt
> checking for PQconnectStart in -lpq... yes
> updating cache ./config.cache
> creating ./config.status
> creating Setup
> creating config.h
> creating Makefile.pre
> creating Makefile
> 
> which seems dandy until:
> 
> doug:~/psycopg-0.5.1$ make
> gcc -fpic  -g -O2 -Wall -Wstrict-prototypes -Wall  -
> I/usr/local/include/python2.0 -I/usr/local/lib/python2.0/config -
> DHAVE_CONFIG_H=1  -DHAVE_LIBCRYPT=1  -I/usr/local/pgsql/include -
> I/usr/local/lib/python2.1/site-packages/mx/DateTime/mxDateTime -
> DVERSION="0.5.1" -DDEBUG -D_REENTRANT -D_GNU_SOURCE -c ./module.c
> ./module.c:29: mxDateTime.h: No such file or directory
> In file included from ./module.c:33:
> module.h:33: mxDateTime.h: No such file or directory
> make: *** [module.o] Error 1
> 
> I have looked for mxDateTime.h and found it, not in the python libs where I
> expected it to be, but in:
> 
> /home/doug/egenix-mx-base-2.0.0./mx/DateTime/mxDateTime/mxDateTime.h
> 
> Where do I need to move mxDateTime.h (and any other gotchaStupid.h files) to
> make the compilation work? Is there a way to specify it in the setup.py/cfg
> files?
> 
> I can post more of the ./configure output if needed.

Interesting. Previously, the .h file lived in the same dir as
the C extension itself. Since distutils only installs Python
scripts and the compiled C extensions (not the header files)
per default, the header file is no longer installed in the
target dir.

I think I'll have to issue a new patch release of egenix-mx-base
which solves this problem... in any case, moving the .h file
into site-packages/mx/DateTime/mxDateTime will solve the
problem for you.

-- 
Marc-Andre Lemburg
______________________________________________________________________
Company & Consulting:                           http://www.egenix.com/
Python Pages:                           http://www.lemburg.com/python/