1 |
Hi everybody! |
2 |
|
3 |
At the moment myself and some other ppl are working on getting Gentoo on |
4 |
the Openmoko Freerunner. Thanks to TuXXX and crossdev i was able to get |
5 |
a basic build toolchain with glibc-2.7, gcc-4.3 and binutils-2.18 up and |
6 |
running quite fast. Till now i was able to cross-compile almost |
7 |
everything most things needed extra care (i have quite a huge overlay |
8 |
for crosscompiling packages by now but i don't want to release it just |
9 |
yet because i want to clean things up a bit before i'll let somebody |
10 |
else see this). The only thing i'm still fighting with (something i |
11 |
wanted to merge earlier but wasn't able to convince it to compile so i |
12 |
pushed it back but now i need it for enlightenment) is perl (and thus |
13 |
libperl). The first time i tried it wasn't even able to get over the |
14 |
configuration hurdle (damn i HATE this hand-written pita-configure |
15 |
script of perl) but with my second try i decided to have a look at how |
16 |
they are doing it at openembedded (did you realize that |
17 |
openembedded-bitbake files look almost the same as ebuilds?) and i was |
18 |
able to make some progress. Now it starts to compile, it uses my |
19 |
build-hosts' perl-executable to compile the perl-stuff... But sooner or |
20 |
later the build always fails. The first problem i hit was that if i |
21 |
don't comment out the following lines in |
22 |
/usr/lib/perl5/5.8.8/x86_64-linux/Errno.pm the build fails with the |
23 |
given error message: |
24 |
|
25 |
"$Config{'archname'}-$Config{'osvers'}" eq |
26 |
"x86_64-linux-2.6.25-hh1" or |
27 |
die "Errno architecture (x86_64-linux-2.6.25-hh1) does not match |
28 |
executable architecture ($Config{'archname'}-$Config{'osvers'})"; |
29 |
|
30 |
When i comment these three lines build goes a bit further but failes |
31 |
with the following error message afterards: |
32 |
|
33 |
Making Filter::Util::Call (dynamic) |
34 |
Writing Makefile for Filter::Util::Call |
35 |
make[2]: Entering directory |
36 |
`/root/openmoko/tmp/portage/sys-devel/libperl-5.8.8-r2/work/perl-5.8.8/ext/Filter/Util/Call' |
37 |
Can't load '../../../../lib/auto/File/Glob/Glob.so' for module |
38 |
File::Glob: ../../../../lib/auto/File/Glob/Glob.so: wrong ELF class: |
39 |
ELFCLASS32 at ../../../../lib/XSLoader.pm line 70. |
40 |
at ../../../../lib/File/Glob.pm line 96 |
41 |
Compilation failed in require at ../../../../lib/ExtUtils/Command.pm |
42 |
line 61. |
43 |
BEGIN failed--compilation aborted at ../../../../lib/ExtUtils/Command.pm |
44 |
line 61. |
45 |
Compilation failed in require. |
46 |
BEGIN failed--compilation aborted. |
47 |
make[2]: *** [../../../../lib/Filter/Util/.exists] Error 9 |
48 |
|
49 |
The steps i tried are the same as mentioned in the README-file in the |
50 |
Cross-Subdirectory of the unpacked perl-tarball: |
51 |
|
52 |
unpack it (plus do some additional patching) using portage |
53 |
execute make patch and make perl manually (i want to make it work |
54 |
manually before i actually try to make it work using portage...) |
55 |
|
56 |
I guess the error message means that something is linked against Glob.so |
57 |
that should not be linked against it. What kinda wonders me is the fact |
58 |
that it's complaining about ELFCLASS32 but if i am correct the |
59 |
arm-processor uses a 32-bit architecture?? If it would complain about |
60 |
ELFCLASS64 i would know what the problem is, it linked something against |
61 |
my build-hosts libs. |
62 |
|
63 |
Anyway maybe I'll attach my config-file for perl, maybe somebody else is |
64 |
able to make sense of all this and enlighten me. |
65 |
|
66 |
Thanks in advance, |
67 |
|
68 |
Christoph |