collect2: ld returned 1 exit status when building from source

BartC bc at freeuk.com
Mon Sep 12 13:23:03 EDT 2016


On 12/09/2016 07:59, dieter wrote:
> Steve D'Aprano <steve+python at pearwood.info> writes:
>> ...
>> but the build still fails, with the same errors:
>>
>>
>> Python/dtrace_stubs.o: In function `PyDTrace_LINE':
>> /home/steve/python/python-dev/cpython/Include/pydtrace.h:25: multiple
>> definition of `PyDTrace_LINE'
>> Python/ceval.o:/home/steve/python/python-dev/cpython/Include/pydtrace.h:25:
>> first defined here
>>   [ ... many, many, many more similar errors ... ]
>>
>> collect2: ld returned 1 exit status
>> make: *** [Programs/_freeze_importlib] Error 1
>
> Looks as if some error has slipped in the sources: you should not have multiple
> conflicting definitions for the same symbol (e.g. "PyDTrace_LINE").
> Alternatively, your built might fetch wrong headers (e.g. headers
> for a different Python version).
>
> I would look at the places from which the "multiple definition"s come
> and try to find out why there are multiple of them.

I downloaded the sources to have a look, but I couldn't even see those 
files (only ceval.c). Perhaps they are auto-generated as part of the build.

I hate these complicated auto-build-tools where they /have/ to work 100% 
perfectly otherwise you're ... in deep trouble when something goes 
wrong. And this is a perfect example.

-- 
bartc






More information about the Python-list mailing list