1 |
Dear yegle, |
2 |
|
3 |
yegle <cnyegle@×××××.com> writes: |
4 |
|
5 |
> I've successfully created a gentoo RAP environment on an 64-bit Ubuntu |
6 |
> 12.04 system, with some modification/tweak. |
7 |
|
8 |
Thank you very much for the effort! It has always been a dream of Prefix |
9 |
community to have Prefix running on Debian-based multiarch smoothly. The |
10 |
only reason it is not yet is lacking of manpower. |
11 |
|
12 |
Anyway, Prefix is meant to make broken host usable again by the power of |
13 |
Gentoo. If Prefix can be rendered unusable by any host weirdness, it is |
14 |
the problem of Prefix, too. |
15 |
|
16 |
You are the world saver by stepping up :D |
17 |
|
18 |
> http://www.mail-archive.com/gentoo-alt@l.g.o/msg06779.html |
19 |
|
20 |
Quoting the steps again. Would you like to refine the hacks, so that it |
21 |
can be included officially? |
22 |
|
23 |
Also, keep in mind that redlizard has an actively maintained bootstrap |
24 |
script at |
25 |
|
26 |
https://github.com/redlizard/prefix-libc/blob/master/scripts/bootstrap-prefix.sh |
27 |
|
28 |
> 1. Modify the bootstrap-rap.sh script, change the freens.org domain name to |
29 |
> gentooexperiments.org |
30 |
|
31 |
done. |
32 |
|
33 |
> 2. Modify the bootstrap-rap.sh script, bypass the check for Ubuntu |
34 |
> version |
35 |
|
36 |
done. |
37 |
|
38 |
> 3. Edit gcc-4.7.3.ebuild and add "export LD_LIBRARY_PATH=$EPREFIX/usr/lib64" |
39 |
> when bootstrapping gcc in stage3. If not, cc1 can't find libgmp.so.X |
40 |
|
41 |
This should not happen if you run $EPREFIX/usr/sbin/ldconfig after |
42 |
emerging glibc. Unfortunately ldconfig is masked out by portage-prefix. |
43 |
|
44 |
We'll return to this issue afterwards. |
45 |
|
46 |
> 4. Edit make.conf and add "CFLAGS=-L/usr/lib/x86_64-linux-gnu/". If not, emerge |
47 |
> perl in stage3 would fail in configuration (compiler complain that -ldb not |
48 |
> found) |
49 |
|
50 |
Not sure of this, perl access libdb in host even it is available in |
51 |
Prefix? |
52 |
|
53 |
redlizard, have you already fixed this? |
54 |
|
55 |
> 5. Edit "Lib/plat-linux2/regen" file when emerging python {2.7.5,3.3.2} in |
56 |
> stage3 because "sys/types.h" header in Debian/Ubuntu multiarch locates in |
57 |
> /usr/include/x86_64-linux-gnu/sys/types.h (I just ctrl+z'ed the emerge process |
58 |
> and edit the corresponding file, then fg to resume emerging) |
59 |
|
60 |
Same as the previous point. At this point glibc is emerged in $EPREFIX |
61 |
providing sys/types.h I suppose... |
62 |
|
63 |
> 6. Edit portage-2.2.01.22124-r1.ebuild, change the code related to removing sed |
64 |
> wrapper to look like this: |
65 |
|
66 |
> if use userland_GNU; then |
67 |
> rm "${ED}"${portage_base/lib64/lib}/bin/ebuild-helpers/bsd/sed || die |
68 |
> "Failed to remove sed wrapper" |
69 |
> fi |
70 |
|
71 |
Now lets bootstrap using portage-2.2.7 and hopefully this hack will disappear. |
72 |
|
73 |
> Hope my steps can be tested/verified by someone else. |
74 |
|
75 |
Hope so, too! |
76 |
|
77 |
Cheers, |
78 |
Benda |