Build broken on Debian Testing (linker trouble)

Moritz Lenz moritz at faui2k3.org
Sun Jun 10 06:40:43 UTC 2012


kmOn 06/09/2012 07:42 PM, James E Keenan wrote:
> On 6/9/12 1:25 PM, Nick Wellnhofer wrote:
> 
>>
>> The problem is that Parrot's build system defaults to Perl's compiler
>> flags. I guess that's where the "pie" flags come from. For a quick fix,
>> one could add some code to the build system that removes those flags.
>> For a real solution, Parrot should provide it's own compiler flags. I
>> started some work in this direction quite a while ago in branch
>> nwellnhof/compiler_flags.
> 
> I remember that branch!  It still builds:
> http://smolder.parrot.org/app/projects/report_details/29368

After James has merged master into that branch, I've tried to build it
(on Debian Testing, amd64)

$ git checkout nwellnhof/compiler_flags
$ git log -n 1
commit 937d2189d1d166acb958c94a71772a37eece3a4c
Merge: 017401c 651fe7b
Author: jkeenan <jkeenan at cpan.org>
Date:   Sat Jun 9 14:25:52 2012 -0400

    Merge master back into nwellnhoff/compiler_flags branch.  Resolve
merge conflicts in darwin, linux and mswin32 hints files.
$ git clean -xdf
$ perl Configure.pl  --prefix=$HOME/p6/rakudo/install --optimize
$ make -j4
...
cc -shared -fPIC  -o blib/lib/libparrot.so.4.4.0
-Wl,-soname=libparrot.so.4.4.0 \
                src/string/api.o src/ops/core_ops.o ...
compilers/imcc/api.o -lpthread -lrt -lgmp -lreadline  -lffi   -fPIE -pie
-Wl,-z,relro -Wl,-z,now  -ldl -lm   -L/usr/lib/x86_64-linux-gnu  -licuuc
-licudata  -ldl -lm
/usr/bin/ld:
/usr/lib/debug/usr/lib/x86_64-linux-gnu/Scrt1.o(.debug_info): relocation
0 has invalid symbol index 11
/usr/bin/ld:
/usr/lib/debug/usr/lib/x86_64-linux-gnu/Scrt1.o(.debug_info): relocation
1 has invalid symbol index 12
...
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/Scrt1.o: In
function `_start':
(.text+0x20): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [blib/lib/libparrot.so.4.4.0] Error 1

So in short, it exhibits the same problem as master.

Cheers,
Moritz


More information about the parrot-dev mailing list