1 |
grobian 08/04/19 10:15:07 |
2 |
|
3 |
Modified: bootstrap-solaris.xml |
4 |
Log: |
5 |
Fix Solaris bootstrapping guide, and add directions for a native 64-bits Prefix |
6 |
|
7 |
Revision Changes Path |
8 |
1.24 xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml |
9 |
|
10 |
file : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml?rev=1.24&view=markup |
11 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml?rev=1.24&content-type=text/plain |
12 |
diff : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml?r1=1.23&r2=1.24 |
13 |
|
14 |
Index: bootstrap-solaris.xml |
15 |
=================================================================== |
16 |
RCS file: /var/cvsroot/gentoo/xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml,v |
17 |
retrieving revision 1.23 |
18 |
retrieving revision 1.24 |
19 |
diff -u -r1.23 -r1.24 |
20 |
--- bootstrap-solaris.xml 18 Mar 2008 21:52:27 -0000 1.23 |
21 |
+++ bootstrap-solaris.xml 19 Apr 2008 10:15:07 -0000 1.24 |
22 |
@@ -1,6 +1,6 @@ |
23 |
<?xml version="1.0" encoding="UTF-8"?> |
24 |
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
25 |
-<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml,v 1.23 2008/03/18 21:52:27 grobian Exp $ --> |
26 |
+<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml,v 1.24 2008/04/19 10:15:07 grobian Exp $ --> |
27 |
|
28 |
<guide link="/proj/en/gentoo-alt/prefix/bootstrap-solaris.xml" lang="en"> |
29 |
<title>Gentoo Prefix Bootstrap Process for Solaris</title> |
30 |
@@ -19,8 +19,8 @@ |
31 |
<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> |
32 |
<license/> |
33 |
|
34 |
- <version>1.6</version> |
35 |
- <date>2008-02-21</date> |
36 |
+ <version>1.7</version> |
37 |
+ <date>2008-04-19</date> |
38 |
|
39 |
<chapter> |
40 |
<title>Bootstrapping on Solaris 10</title> |
41 |
@@ -95,6 +95,13 @@ |
42 |
<path>/usr/sfw/sparc-sun-solaris2.10/bin</path> instead of |
43 |
<path>/usr/sfw/i386-sun-solaris2.10/bin</path></note> |
44 |
<p> |
45 |
+ If you want to end up with a 64-bits native Prefix |
46 |
+ installation, then set your <c>CHOST</c> variable accordingly |
47 |
+ to either <c>x86_64-pc-solaris2.10</c> or |
48 |
+ <c>sparcv9-sun-solaris2.10</c>. You <e>only</e> need to do |
49 |
+ this if you want a 64-bits native Prefix! |
50 |
+ </p> |
51 |
+ <p> |
52 |
Now the path is set, start with downloading the bootstrap |
53 |
script from |
54 |
<uri>http://overlays.gentoo.org/proj/alt/browser/trunk/prefix-overlay/scripts/bootstrap-prefix.sh?format=txt</uri>. |
55 |
@@ -115,8 +122,10 @@ |
56 |
$ <i>./bootstrap-prefix.sh $EPREFIX/tmp gawk</i> |
57 |
$ <i>./bootstrap-prefix.sh $EPREFIX portage</i> |
58 |
</pre> |
59 |
- <note>Please note that <c>wget</c>, <c>sed</c>, etc. are |
60 |
- installed in <path>$EPREFIX/tmp</path>!</note> |
61 |
+ <note> |
62 |
+ Please note that <c>wget</c>, <c>sed</c>, etc. are installed |
63 |
+ in <path>$EPREFIX/tmp</path>! |
64 |
+ </note> |
65 |
<p> |
66 |
The script will setup the <path>$EPREFIX</path> |
67 |
directory, download a portage tree snapshot, unpack it and |
68 |
@@ -129,6 +138,12 @@ |
69 |
$ <i>export CPPFLAGS="-I${EPREFIX}/usr/include"</i> |
70 |
</pre> |
71 |
<p> |
72 |
+ If you are targetting a 64-bits native Prefix, append |
73 |
+ <c>-L</c> and <c>-R</c> flags for <c>/usr/sfw/lib/64</c> to |
74 |
+ your <c>LDFLAGS</c>. Additionally set <c>CC="gcc -m64"</c>, |
75 |
+ <c>CXX="g++ -m64"</c> and <c>HOSTCC="gcc -m64"</c>. |
76 |
+ </p> |
77 |
+ <p> |
78 |
Because we installed some new applications, we will instruct |
79 |
bash to reconsider all paths we have: |
80 |
</p> |
81 |
@@ -171,14 +186,28 @@ |
82 |
Gentoo colour scheme. |
83 |
</p> |
84 |
<pre caption="emerge linker and compiler"> |
85 |
-$ <i>emerge --oneshot m4</i> |
86 |
+$ <i>emerge --oneshot "<m4-1.4.11"</i> |
87 |
$ <i>emerge --oneshot --nodeps baselayout-prefix</i> |
88 |
$ <i>emerge --oneshot --nodeps flex</i> |
89 |
-$ <i>emerge --oneshot --nodeps binutils-config</i> |
90 |
+$ <i>emerge --oneshot --nodeps binutils-config</i> (64-bits: see note!) |
91 |
$ <i>emerge --oneshot --nodeps binutils</i> |
92 |
$ <i>emerge --oneshot --nodeps gcc-config</i> |
93 |
$ <i>emerge --oneshot --nodeps gcc</i> |
94 |
</pre> |
95 |
+ <note> |
96 |
+ 64-bit native Prefix bootstrappers need to workaround an |
97 |
+ inconvenience with <c>binutils-config</c>. When emerging this |
98 |
+ package use <c>env CFLAGS="-O2 -pipe -m64" emerge ...</c>. |
99 |
+ </note> |
100 |
+ <p> |
101 |
+ Since the tools for building are now installed in your Prefix, |
102 |
+ the little helpers we used before are no longer necessary. |
103 |
+ They may even cause trouble, so we unset them. |
104 |
+ </p> |
105 |
+ <pre caption="unset no longer needed environment variables"> |
106 |
+$ <i>unset LDFLAGS CPPFLAGS CHOST CC CXX HOSTCC</i> |
107 |
+ </pre> |
108 |
+ <note>tcsh users can use <c>unsetenv LDFLAGS</c>, etc.</note> |
109 |
<p> |
110 |
We continue getting more tools in our Prefix. We no longer |
111 |
ignore dependencies, so a lot of packages will be emerged at |
112 |
@@ -247,28 +276,21 @@ |
113 |
<c>CFLAGS</c>! Note that the code below is an example, and is |
114 |
meant for inspiration only. |
115 |
</p> |
116 |
- <pre caption="Customising the Prefix installation - example"> |
117 |
+ <pre caption="customising the Prefix installation - example"> |
118 |
$ <i>echo 'USE="unicode nls"' >> $EPREFIX/etc/make.conf</i> |
119 |
$ <i>echo 'CFLAGS="-O2 -pipe"' >> $EPREFIX/etc/make.conf</i> |
120 |
$ <i>echo 'CXXFLAGS="${CFLAGS}"' >> $EPREFIX/etc/make.conf</i> |
121 |
</pre> |
122 |
<p> |
123 |
Since we have everything in place for a self-catered rebuild, |
124 |
- we can unset all hacks we made to help the bootstrap process, |
125 |
- and start the final stage to install the Prefix system. This |
126 |
- final stage recompiles everything in the system, but now all |
127 |
- packages can be compiled with tools from the Prefix, instead |
128 |
- of those from the host system. |
129 |
- </p> |
130 |
- <pre caption="Unsetting LDFLAGS and CPPFLAGS variables"> |
131 |
-$ <i>unset LDFLAGS</i> |
132 |
-$ <i>unset CPPFLAGS</i> |
133 |
+ we can start the final stage to install the Prefix system. |
134 |
+ This final stage recompiles everything in the system, but now |
135 |
+ all packages can be compiled with tools from the Prefix, |
136 |
+ instead of those from the host system. |
137 |
+ </p> |
138 |
+ <pre caption="doing the final system installation"> |
139 |
$ <i>emerge -e system</i> |
140 |
</pre> |
141 |
- <note> |
142 |
- tcsh users can use <c>unsetenv LDFLAGS</c> and alike for |
143 |
- <c>CPPFLAGS</c>. |
144 |
- </note> |
145 |
<p> |
146 |
After <c>system</c> has emerged successfully, your Prefix will |
147 |
be set up properly, and you can emerge the whichever tools you |
148 |
|
149 |
|
150 |
|
151 |
-- |
152 |
gentoo-commits@l.g.o mailing list |