1 |
On 3/29/06, Marco Matthies <marco-ml@×××.net> wrote: |
2 |
> Bertrand Jacquin wrote: |
3 |
> > How could you compile mplayer or firefox in your 64 bits environnement |
4 |
> > to generate 32 bits binary ? I have multilib activated and I can't |
5 |
> > build mplayer with CFLAGS="-m32". |
6 |
> > |
7 |
> > It is needing something else ? |
8 |
> > |
9 |
> > I don't want too to have and maintain a 32 bit chroot. |
10 |
> |
11 |
> I'm assuming you're talking about compiling something by hand here. As |
12 |
> other people have mentioned here, support for portage to compile |
13 |
> arbitrary apps/libs 32-bit or 64-bit isn't there yet (at least in stable |
14 |
> portage which is what i'm using), every ebuild for amd64 at the moment |
15 |
> chooses either 32-bit or 64-bit (by setting ABI=x86 or ABI=amd64). |
16 |
|
17 |
No, maybe I misspell what I was wanting to say (my english sux too). |
18 |
|
19 |
The first exemple I wrote was in reality : |
20 |
CFLAGS="-m32" emerge -avt mozilla-firefox |
21 |
|
22 |
To be clear : I don't want a chroot, because it make be 2 gentoo to |
23 |
maintain and a lot of things unecessary ATM. |
24 |
I would like portage build for me a software in 32 bit mode. |
25 |
If it's a lib, I would like portage to install it in /emul/linux/x86 |
26 |
if I tell him to do that |
27 |
|
28 |
Like a (just an example) : |
29 |
emerge -avt libvorbis --abi 32 |
30 |
|
31 |
For example, I would to compile mplayer with portage and have to |
32 |
choice in USE flags, not as mplayer-bin. |
33 |
|
34 |
Maybe now it could be more clear for all. (I hope) |
35 |
|
36 |
> You need the 32-bit libs (which should go into /lib32 and /usr/lib32) |
37 |
> that your application depends on. At a bare minimum, this is going to be |
38 |
> libc for C programs, but usually some other libs as well. To make |
39 |
> precompiled dynamically linked 32-bit binaries such as mplayer-bin |
40 |
> possible, gentoo also supplies the libs needed for these binary ebuilds |
41 |
> in /emul/linux/x86 which are installed by the emul-linux-x86-* ebuilds. |
42 |
|
43 |
Yeah, I would like to avoid precompiled packages. |
44 |
|
45 |
> So, if the app you want to compile by hand uses only these, you can get |
46 |
> away with something along the lines of: |
47 |
> |
48 |
> ./configure \ |
49 |
> CFLAGS="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" \ |
50 |
> LDFLAGS="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" |
51 |
> |
52 |
> or |
53 |
> |
54 |
> ./configure \ |
55 |
> CFLAGS="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" \ |
56 |
> LDFLAGS="-m elf_i386 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib" |
57 |
> |
58 |
> Which one of these two lines you need to use depends on if LDFLAGS gets |
59 |
> passed to gcc or ld by the makefile. |
60 |
> (see /usr/portage/profiles/default-linux/amd64/2006.0/make.defaults) |
61 |
> |
62 |
> If the app you want to compile needs additional libs, you'll have to |
63 |
> compile them yourself, install them under /usr/local and then compile |
64 |
> the app you're interested in -- this probably quickly becomes annoying |
65 |
> enough to make a 32-bit chroot so you can let portage+ebuilds do all the |
66 |
> work for you. |
67 |
|
68 |
I would like to avoid it too. |
69 |
|
70 |
Beber |
71 |
|
72 |
-- |
73 |
gentoo-amd64@g.o mailing list |