1 |
> |
2 |
> my problem upgrading to mysql-4.1 is the downtime that I am |
3 |
> going to get while the new build completes. |
4 |
> |
5 |
> That's why I was planning to build a binary package for |
6 |
> mysql-4.1 on a second host in order to install it on my |
7 |
> production server, but I could not find a list of common |
8 |
> pitfalls to consider while building packages for a different |
9 |
> host. These are the things that I can think of so far: |
10 |
> |
11 |
> - appropriate make.conf, CFLAGS etc. |
12 |
> - right USE flags (or make.profile in general) |
13 |
> - same version of libraries / dependencies to prevent dynamic |
14 |
> linking of |
15 |
> libraries that don't exist on target host (that's going to |
16 |
> be a hard one) |
17 |
> |
18 |
> Is there a HowTo that lists all things to consider, or is it |
19 |
> a generally discouraged thing to build packages for another |
20 |
> host if the hosts are not 100% the same? |
21 |
> |
22 |
|
23 |
You could take a look at Kerin Millar's response to Karl Zander's post from |
24 |
last Friday: |
25 |
|
26 |
============================ |
27 |
> /code |
28 |
> make.conf |
29 |
> CFLAGS="-0s -mcpu=i686 -pipe" |
30 |
> CHOST="i386-pc-linux-gnu" |
31 |
> CXXFLAGS="${CFLAGS}" |
32 |
> /end code |
33 |
> |
34 |
> I am not sure why CHOST="i386-pc-linux-gnu". Even make.conf.example |
35 |
> says |
36 |
> |
37 |
> "All modern systems (even Athalons) should use "i686-pc-linux-gnu" |
38 |
|
39 |
Read that as "are capable of using" rather than "should use" and it makes |
40 |
more sense. |
41 |
|
42 |
> |
43 |
> Do I have the right tarball? I got the tarball from the cd, not from the |
44 |
|
45 |
Yes, you do. The 2005.1-r1 LiveCD only ships with a generic x86 stage3 |
46 |
tarball. There are two good reasons for this: |
47 |
|
48 |
1) It simplifies the job of release engineering considerably. |
49 |
|
50 |
2) The most broadly distributed packages CD featured binary packages which |
51 |
are (and always have been) built in the same manner - that is, with |
52 |
CHOST="i386-pc-linux-gnu" and -mcpu=i686. Thus you get packages which are |
53 |
optimised for the i686 family of processors in general but which will run on |
54 |
>=i386 processor. People were all too often mixing the wrong stageball with |
55 |
said packages and running into compilation issues further down the line. |
56 |
============================ |
57 |
|
58 |
If you are only running P4's, you could still get away with a CHOST of |
59 |
"i686-pc-linux-gnu" and a "-mtune=pentium4" in your CFLAGS. See the gcc man |
60 |
page for more info. |
61 |
|
62 |
-- |
63 |
gentoo-server@g.o mailing list |