1 |
On Wed, Aug 12, 2015 at 3:47 PM, Mike Frysinger <vapier@g.o> wrote: |
2 |
|
3 |
> On 12 Aug 2015 15:20, Leno Hou wrote: |
4 |
> > 2. How to control endian difference via profiles ? i.e. *How to get |
5 |
> > ppc64le as a full stage/profile along side ppc64* ? |
6 |
> > Could you give me in detail ? |
7 |
> |
8 |
> you probably want to create a new profile dir: |
9 |
> profiles/arch/powerpc/ppc64/little-endian/ |
10 |
> then add a make.defaults file with the right CHOST defaults. as we find |
11 |
> packages that have problems on little endian, that provides you a safe |
12 |
> space to mask features too. |
13 |
> |
14 |
> then create a new target for linux users: |
15 |
> |
16 |
> profiles/default/linux/powerpc/ppc64/13.0/64bit-userland/little-endian/ |
17 |
> that'll inherit the arch/powerpc/ppc64/little-endian parent |
18 |
> |
19 |
> > 5. https://wiki.gentoo.org/wiki/Porting The Section 'Converting to |
20 |
> > Gentoo' needs to be updated. |
21 |
> > From portage-2.2.20 on, please download portage and install it by |
22 |
> > 'python setup.py install' |
23 |
> |
24 |
> you mean my bootstrap-portage script ? |
25 |
> |
26 |
|
27 |
See my comments in below mail. |
28 |
|
29 |
> |
30 |
> > **Most importantly, Any Ideas/steps of how to porting gentoo on ppc64le |
31 |
> > architecture?** |
32 |
> |
33 |
> do you have hardware ? then it's simply a matter of booting Gentoo in it |
34 |
> and |
35 |
> filing/fixing bugs :). |
36 |
> |
37 |
|
38 |
YES. We have KVM virtual machine of ppc64le. Can we booting/filing/fixing |
39 |
by KVM ? |
40 |
|
41 |
> -mike |
42 |
> |
43 |
|
44 |
Greetings !~~ |
45 |
|
46 |
|
47 |
*What I have done according to your suggestions.* |
48 |
|
49 |
Once you have these packages, you can easily install Portage. |
50 |
|
51 |
root #wget http://distfiles.gentoo.org/distfiles/portage-2.2.20.tar.bz2 |
52 |
root #tar -xvf portage-2.2.20 |
53 |
root #cd portage-2.2.20 && python setup.py install |
54 |
|
55 |
|
56 |
|
57 |
1, sync up and we should have our Portage tree! |
58 |
|
59 |
root #emerge --sync |
60 |
|
61 |
Then we need to create a new profile for the new architecture ppc64le: |
62 |
|
63 |
root #cd /usr/portage/profiles/arch/powerpc/ppc64/ && mkdir little-endian |
64 |
root #cd little-endian |
65 |
root #echo '..' > parent |
66 |
root #cat << EOF > make.defaults |
67 |
CHOST="powerpc64le-linux-gnu" |
68 |
EOF |
69 |
|
70 |
|
71 |
2, create a new target for linux users: |
72 |
|
73 |
root #cd |
74 |
/usr/portage/profiles/default/linux/powerpc/ppc64/13.0/64bit-userland/ |
75 |
root #mkdir little-endian && cd little-endian |
76 |
root #cat << EOF > parent |
77 |
.. |
78 |
../../../../../../../arch/powerpc/ppc64/little-endian |
79 |
EOF |
80 |
root #cd /etc/portage |
81 |
root #ln -s |
82 |
../../usr/portage/profiles/default/linux/powerpc/ppc64/13.0/64bit-userland/little-endian |
83 |
make.profile |
84 |
root #cd /etc/portage |
85 |
root #cat << EOF > make.conf |
86 |
PORTDIR_OVERLAY=/usr/local/portage |
87 |
MAKEOPTS="-j8" |
88 |
CFLAGS="-mcpu=power8 -mtune=power8 -O2 -pipe -I/gentoo/usr/include |
89 |
-L/gentoo/usr/lib64 -L/gentoo/lib -L/gentoo/lib64 -lpthread " |
90 |
CXXFLAGS="${CFLAGS}" |
91 |
CPPFLAGS="${CFLAGS}" |
92 |
LDFLAGS="-I/gentoo/usr/include -L/gentoo/usr/lib64 -L/gentoo/lib |
93 |
-L/gentoo/lib64 -lpthread " |
94 |
LC_ALL="en_US.UTF-8" |
95 |
FEATURES="buildpkg" |
96 |
USE="python_targets_python2_7" |
97 |
EOF |
98 |
|
99 |
|
100 |
3, Fix Problem with sandbox |
101 |
|
102 |
root #apt-get install pax-utils build-essential gawk |
103 |
root # emerge --nodeps --ask sandbox |
104 |
|
105 |
|
106 |
4, Build the whole system |
107 |
|
108 |
root #ROOT=/gentoo emerge @system |
109 |
Results: https://bpaste.net/show/e6db5a5a70aa |
110 |
|
111 |
|
112 |
Should `ROOT=/gentoo emerge glibc` or `ROOT=/gentoo emerge gcc` |
113 |
first to fix the circle dependencies ? |
114 |
Please let me know forward/steps to port gentoo on ppc64le. |
115 |
|
116 |
/etc/portage/package.accept_keywords in ppc64le and bug reports as |
117 |
following links. |
118 |
>=dev-libs/libffi-3.2.1 ~ppc64 |
119 |
>=dev-libs/gmp-6.0.0a ~ppc64 |
120 |
|
121 |
Links: |
122 |
https://bugzilla.redhat.com/show_bug.cgi?id=1083429 |
123 |
https://github.com/ffi/ffi/issues/413 |