[Python-bugs-list] [ python-Bugs-640553 ] Misuse of /usr/local/in setup.py

noreply@sourceforge.net noreply@sourceforge.net
Tue, 19 Nov 2002 04:29:53 -0800

Bugs item #640553, was opened at 2002-11-19 08:04
You can respond by visiting: 

Category: Build
Group: Python 2.2.2
Status: Open
Resolution: None
Priority: 5
Submitted By: Nick Maclaren (nmm1)
Assigned to: Nobody/Anonymous (nobody)
Summary: Misuse of /usr/local/in setup.py

Initial Comment:
I cannot guarantee that this has not been reported
before, as the search facility doesn't appear
sufficiently powerful to determine that, and I do not
have time to read a hundred bug reports.

setup.py forces the use of /usr/local, which is wrong
on more counts
than I can describe.  Not merely need it not exist, it
could easily
contain the wrong versions of libraries and headers. 
The following
change should be reversed:

*** setup.py.org        Mon Nov 18 19:57:09 2002
--- setup.py    Mon Nov 18 19:57:23 2002
*** 197,207 ****
          return platform
      def detect_modules(self):
-         # Ensure that /usr/local is always used
-         if '/usr/local/lib' not in
-             self.compiler.library_dirs.insert(0,
-         if '/usr/local/include' not in
-             self.compiler.include_dirs.insert(0,
'/usr/local/include' )
              have_unicode = unicode
--- 197,202 ----


>Comment By: Nick Maclaren (nmm1)
Date: 2002-11-19 12:29

Logged In: YES 

No, that's not the issue.  The build was absolutely out of
the box, and the requirements were absolutely standard.
But, for reasons that are irrelevant, -L/usr/local/lib
caused failure.

The point was that I had not specified it, it was not
specified anywhere in the configuration or any of the
Makefiles, and it wasn't even in Modules/Setup!  So I
could not understand where it was being set.

I discovered that setup.py is invoked by default, and that
did the job but didn't leave a record in any configuration
or building file.  GOTCHA!


Comment By: Michael Hudson (mwh)
Date: 2002-11-19 10:00

Logged In: YES 

It's not added if it doesn't exist in the HEAD branch.

Wrt the other complaint, I think setup.py is only intended
to be a convenience. If you have even vaguely complex
building requirements, edit Modules/Setup instead.


You can respond by visiting: