Issue 8335: distutils test_build_ext's test_get_outputs fails in bootstrap environment (original) (raw)
Issue8335
Created on 2010-04-07 17:54 by matejcik, last changed 2022-04-11 14:56 by admin. This issue is now closed.
Messages (7) | ||
---|---|---|
msg102552 - (view) | Author: jan matejek (matejcik) * | Date: 2010-04-07 17:53 |
when running testsuite in a clean environment without pre-installed system python, test_distutils fail in test_build_ext, test_get_outputs: /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: cannot find -lpython2.6 LinkError: command 'gcc' failed with exit status 1 full traceback is below. this is most likely caused by change in r72637: http://svn.python.org/view/python/branches/release26-maint/Lib/distutils/tests/test_build_ext.py?r1=72637&r2=72636&pathrev=72637 this changes compiler's working directory, so that it can no longer find libpython2.6.so with "-L." (related to issue 6022 - the comments there point it out) not sure about proper fix - personally, i don't care much about leaving one more file in builddir, whereas i do care about tests passing in clean env, so for SUSE i'm reverting r72637 full traceback: test_distutils /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: cannot find -lpython2.6 collect2: ld returned 1 exit status test test_distutils failed -- Traceback (most recent call last): File "/usr/src/packages/BUILD/Python-2.6.5/Lib/distutils/tests/test_build_ext.py", line 261, in test_get_outputs cmd.run() File "/usr/src/packages/BUILD/Python-2.6.5/Lib/distutils/command/build_ext.py", line 340, in run self.build_extensions() File "/usr/src/packages/BUILD/Python-2.6.5/Lib/distutils/command/build_ext.py", line 449, in build_extensions self.build_extension(ext) File "/usr/src/packages/BUILD/Python-2.6.5/Lib/distutils/command/build_ext.py", line 531, in build_extension target_lang=language) File "/usr/src/packages/BUILD/Python-2.6.5/Lib/distutils/ccompiler.py", line 769, in link_shared_object extra_preargs, extra_postargs, build_temp, target_lang) File "/usr/src/packages/BUILD/Python-2.6.5/Lib/distutils/unixccompiler.py", line 259, in link raise LinkError, msg LinkError: command 'gcc' failed with exit status 1 | ||
msg105995 - (view) | Author: Dylan Canfield (Canfield) | Date: 2010-05-18 18:10 |
I am having the exact same problem with test_distutils failing on a clean env. Did reverting the changes in r72637 fix your problem? | ||
msg106454 - (view) | Author: jan matejek (matejcik) * | Date: 2010-05-25 17:45 |
yes, reverting r72637 fixes this problem for me it reintroduces the original bug (there is some temporary file left behind), but i don't care about that | ||
msg106472 - (view) | Author: Tarek Ziadé (tarek) * ![]() |
Date: 2010-05-25 20:14 |
Dylan, what is your platform ? The only difference is that the test chdir in a new temporary directory. Could anyone trace the test to step into the linker call to see its error output ? (can't reproduce here) | ||
msg106537 - (view) | Author: jan matejek (matejcik) * | Date: 2010-05-26 15:46 |
Tarek, the error output is this: /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: cannot find -lpython2.6 the chdir is the problem - because in an environment where you don't have an existing Python installation, you will not find -lpython2.6. the linker from unixccompiler.py:link() is this: ['gcc', '-pthread', '-shared', '/tmp/pythontest_eosQ1d/tempt/tmp/tmphIMDH2/foo.o', '-L.', '-lpython2.6', '-o', '/tmp/tmppAsk00/foo.so'] and since you're in new temporary directory, -L. does not include libpython2.6 (unless you copy it in that directory or change -L. to the right place) | ||
msg119014 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2010-10-18 13:32 |
This may be solved by backporting the fix in #10126. I’ll do it when my network gives me access to svn again :/ | ||
msg119028 - (view) | Author: Éric Araujo (eric.araujo) * ![]() |
Date: 2010-10-18 15:17 |
Marking as duplicate, following Barry in |
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-04-11 14:56:59 | admin | set | github: 52582 |
2010-10-18 15:17:23 | eric.araujo | set | status: open -> closedsuperseder: test_distutils failure with --enable-sharednosy: + barrymessages: + resolution: duplicatestage: resolved |
2010-10-18 14:46:14 | eric.araujo | unlink | issue9539 superseder |
2010-10-18 13:44:00 | eric.araujo | set | nosy: + sandro.tosi, valeo |
2010-10-18 13:32:16 | eric.araujo | set | nosy:matejcik, tarek, eric.araujo, Canfieldmessages: + components: + Distutils2versions: + 3rd party, Python 3.1, Python 2.7, Python 3.2, - Python 2.6 |
2010-10-18 13:29:05 | eric.araujo | link | issue9539 superseder |
2010-10-14 23:32:35 | eric.araujo | set | nosy: + eric.araujo |
2010-05-26 15:46:11 | matejcik | set | messages: + |
2010-05-25 20:14:30 | tarek | set | messages: + |
2010-05-25 17:45:16 | matejcik | set | messages: + |
2010-05-18 18:10:51 | Canfield | set | nosy: + Canfieldmessages: + |
2010-04-07 17:54:00 | matejcik | create |