Gentoo Archives: gentoo-amd64

From: Mansour Al Akeel <mansour.alakeel@×××××.com>
To: gentoo-amd64@l.g.o
Subject: Re: [gentoo-amd64] Re: Wine with no-multilib on AMD64
Date: Tue, 16 Mar 2010 15:03:20
Message-Id: 20100316145151.GB4691@mars.lan
In Reply to: [gentoo-amd64] Re: Wine with no-multilib on AMD64 by Duncan <1i5t5.duncan@cox.net>
1 Thank you Duncan,
2 I checked this yesterday. In fact I was considering the idea of a
3 chroot last. And I didn't know there's a guide for it. The guide served
4 as a refrence in case I forgot something.
5
6 In my case, having a separate 32 bit is a better option, since I have a
7 huge external hard disk, and use it mostely as a bootable server for
8 development and testing. In case I run low on resources on my laptop, I
9 just plug this usb drive in any PC and I have a fully running server to
10 deploy and test. After all, I don't that the chroot, is taking a lot of
11 room on my disk, and I'd rather not to use multilib for bad experience I
12 had with it, few years ago.
13
14 Things are working great for now.
15
16
17 On Tue Mar 16,2010 01:56 am, Duncan wrote:
18 > Mansour Al Akeel posted on Mon, 15 Mar 2010 15:04:49 -0300 as excerpted:
19 >
20 > > Hello Duncan:
21 > > Pleae read my comments.
22 > >
23 > > On Sat Mar 13,2010 10:20 pm, Duncan wrote:
24 > >> Volker Armin Hemmann posted on Sat, 13 Mar 2010 16:29:06 +0100 as
25 > >> excerpted:
26 > >>
27 > >> > On Samstag 13 M??rz 2010, Mansour Al Akeel wrote:
28 > >> >> Hello all,
29 > >> >>
30 > >> >> I have been looking into installing wine and a cross dev tool chain.
31 > >> >> I didn't get much luck, since I have amd64 and I use no-multilib. I
32 > >> >> found this http://bugs.gentoo.org/269439 and I am wondering if any
33 > >> >> one can provide an advice. Is it be possible to run wine on amd64
34 > >> >> with no-multilib ?
35 > >> >
36 > >> > you won't be able to run any 32bit windows app. Which makes wine
37 > >> > pretty useless.
38 > >>
39 > >> FWIW, I have no-multilib, but with the 32-bit compatibility turned on
40 > >> in the kernel, I'm able to do the 32-bit chroot thing as in the
41 > >> gentoo/amd64 documentation.
42 > >>
43 > >> In my case, I'm doing a full 32-bit chroot image, which then gets
44 > >> transferred to my AA1 netbook. (The big machine has far more memory
45 > >> and power to do the compiles, so it makes more sense to do that and not
46 > >> even have the gentoo tree on the netbook, just transfer over the
47 > >> prebuilt, preconfigured image, and rsync it again after every update.
48 > >> I've never booted the 32-bit image on the big machine, tho, and indeed,
49 > >> couldn't, as the kernel drivers, etc, are all built-in and configured
50 > >> for the netbook.)
51 > >
52 > > Are you saying that you have another 32bit gentoo image, and you mount
53 > > it somewhere and chroot to it? If so, what does the memory has to do
54 > > with this ? Can you please elaborate on this ? The space is not a
55 > > concern to me, but I'd rather not mix 32 and 64 libs.
56 >
57 > Yes. I have a 32-bit chroot image that gets mounted and chrooted into
58 > (using linux32 chroot ...) as per the gentoo/amd64 32-bit chroot guide.
59 > That works just fine with no-multilib, and indeed, multilib would
60 > duplicate functionality to some degree. Just make sure your kernel has
61 > 32-bit "emulation" turned on (tho it's not really emulation, in the same
62 > way that wine is not an emulator, amd64/x86_64 is true dual-bitness
63 > hardware).
64 >
65 > I posted the link to the guide in the doomsday thread pretty much
66 > concurrently to the discussion here, but for convenience, here's the link:
67 >
68 > http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=2
69 >
70 > That explains the process and covers the step-by-step quite nicely. I
71 > discuss it in more depth in the doomsday thread, so I'd suggest you read
72 > it if you're seriously interested in this. Meanwhile...
73 >
74 > As mentioned, I use the 32-bit chroot for a somewhat different purpose,
75 > building a separate 32-bit image to run on my 32-bit-only netbook. As
76 > such, I have a fully configured and bootable build-out of the 32-bit as if
77 > it were an entirely separate machine, even if I never boot to it on this
78 > machine, because it is intended to run on a separate machine. However,
79 > while that's a reasonably trivial extension from the 32-bit chroot guide,
80 > it's not why it was written, nor what it directly addresses. But as you
81 > specify, it's definitely entirely separate, no mixed 32/64-bit as multilib
82 > does, or it'd be unsuitable for the 32-bit-only machine usage to which I
83 > put it. So rest assured on that point. The only mixing between the two
84 > systems are mount-binds setup to expose stuff like a common tempdir
85 > between the two systems (and of course that you happen to be running on a
86 > 64-bit host kernel in the first place), and it's relatively trivial to
87 > simply not mount-bind what you specifically don't need. If you're
88 > familiar with chroots, mount-binds for access within the chroot are pretty
89 > standard stuff, and it /is/ a chroot, so it's as entirely separate as a
90 > chroot normally would be.
91 >
92 > As to your specific question "what does the memory have to do with this?",
93 > I don't quite understand the question, so pardon my not answering it
94 > specifically.
95 >
96 > Unless of course you're referring to the fact that you can't normally
97 > combine 32-bit apps with 64-bit libs, or the reverse, a typical source of
98 > newbie confusion (and quite some emerge bugs when the build happens across
99 > the wrong bitness lib before it sees the correct one) on multilib setups.
100 >
101 > That, IMO, is one of the advantages of the separate 32-bit chroot concept,
102 > particularly with no-multilib. The main 64-bit system basically doesn't
103 > know it's there, it's just data to it, and the 32-bit chroot of course
104 > only knows about the parts of the 64-bit system that you've exposed to it
105 > thru bind-mounts, so there's very little chance of getting things mixed
106 > up, unless you deliberately mount a 64-bit libdir into the chroot or
107 > something, and as Gentooers should know by now, Gentoo does specifically
108 > allow you to (metaphorically) point a loaded gun at yourself and pull the
109 > trigger if you want, which is about what deliberately mounting a 64-bit
110 > libdir into the chroot would be doing.
111 >
112 > So... read my detailed response in the doomsday thread and the chroot
113 > guide, and that should give you a far better idea of whether what we're
114 > talking about is useful for you or not.
115 >
116 > Personally, I don't know. Honestly, it's definitely a lot of work,
117 > perhaps more than you're willing to put into it.
118 >
119 > You might be able to do what you want, and would arguably be better off,
120 > switching to a multilib profile and starting with a standard 64-bit
121 > stage-3 tarball again, to rebuild your Linux-side toolchain as multilib.
122 > That'll be some work now, but will definitely be less work maintaining
123 > than a 32-bit chroot. Unfortunately I don't know enough about the wine
124 > and MS platform cross-dev toolchain bit to evaluate what problems you
125 > might or might not have with that. I'm simply assuming it'll "just work"
126 > with a multilib profile, but that's a best-case assumption.
127 >
128 > OTOH, the 32-bit chroot concept, while definitely more work maintaining
129 > (it's roughly comparable work immediately to switching back to multilib,
130 > starting again from a standard multilib-compatible amd64 stage-3 tarball,
131 > but the 32-bit chroot will be more work maintaining over time as you'll be
132 > having to update stuff both on the main machine and in the chroot), *IS* a
133 > cleaner, more logically separate, solution. And, installing a 32-bit wine/
134 > MS-platform cross-dev is much more likely a known quantity with any bug
135 > you might happen across much more common, than the dual bitness multilib
136 > concept.
137 >
138 > The thought occurs to me that it may hinge on 64-bit MS cross-dev status
139 > and whether you anticipate doing both 32-bit and 64-bit development, or
140 > only 32-bit. It's possible multilib would enable both, while you'd very
141 > likely have to have separate 32-bit and 64-bit cross-dev arrangements too,
142 > if your Linux host is separate 32-bit and 64-bit, as with the chroot
143 > solution. If you're not interested in the 64-bit MS side at all, that's
144 > not an issue. Likewise if your cross-dev solution doesn't include a
145 > 64-bit MS side at all. But if you are and it does, then going the
146 > separate 32-bit chroot route on the Linux side probably necessitates a
147 > separate cross-dev for each as well, thus an even higher continuing
148 > maintenance burden choosing the separate chroot route.
149 >
150 > --
151 > Duncan - List replies preferred. No HTML msgs.
152 > "Every nonfree program has a lord, a master --
153 > and if you use the program, he is your master." Richard Stallman
154 >
155 >

Replies

Subject Author
Re: [gentoo-amd64] Re: Wine with no-multilib on AMD64 Mansour Al Akeel <mansour.alakeel@×××××.com>