Building things with setup.py
Robert Kern
robert.kern at gmail.com
Fri Sep 22 00:13:36 EDT 2006
James Stroud wrote:
> I did build my own python 2.5, yesterday, requiring me to rebuild all
> extensions.
Do other extensions build correctly? If so, it's beginning to look like a
problem in numpy.distutils .
> Everything I do is compiled by hand as joe-user. I'm in a
> situation where I can't do RPM (and I don't have root on my work machine
> (theoretically ;-)) so, to be a good joe-user, everything I add goes
> into the prefix:
>
> $HOME/Programs
>
> This is the listing from $HOME/Programs/lib/python2.5/config:
>
> euler 6% ls
> total 4092
> 8 config.c 12 install-sh* 44 Makefile 8 python.o
> 8 Setup.config
> 8 config.c.in 3960 libpython2.5.a 12 makesetup* 24 Setup
> 8 Setup.local
>
> The build process, by the way, required my copying libpython2.5.a to
> $HOME/Programs/lib.
Hmm. That doesn't quite sound right, but it's been a while since I compiled the
interpreter from source.
> The text files Setup.config and Setup.local do not seem to have terribly
> specific information in them. Which file in particular should I inspect?
Makefile has most of that information. You can verify that distutils is finding
it like so:
>>> from distutils import sysconfig
>>> sysconfig.get_makefile_filename()
'/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/config/Makefile'
>>> d = sysconfig.parse_makefile(_)
>>> import pprint
>>> pprint.pprint(d)
{'AR': 'ar',
...
}
> I did not capture output from the build and I could not find a file with
> the word "log" in it that appears to be a build log. The jist of the
> problem is that first it can't find symbols from libpython2.5, then from
> libthread, etc. Then, it complains about no "MAIN__" when linking the
> .so files with g77 and no "main" with gcc (which is curious), so I must
> include the -shared flag, after including -llibrary type flags for all
> of the libraries it doesn't know about.
What versions of gcc and g77 are you using?
> If its necessary, I can run setup.py build again and send the output to
> a file and post that to scipy-dev if you think it might be helpful.
Yes, that is what I intended.
--
Robert Kern
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
More information about the Python-list
mailing list