Gentoo Archives: gentoo-user

From: Mark Knecht <markknecht@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] mesa build failure
Date: Sat, 27 Jun 2009 20:54:52
Message-Id: 5bdc1c8b0906271354u20efa5bi543d0a0121a8a86a@mail.gmail.com
In Reply to: Re: [gentoo-user] mesa build failure by Volker Armin Hemmann
1 On Sat, Jun 27, 2009 at 1:25 PM, Volker Armin
2 Hemmann<volkerarmin@××××××××××.com> wrote:
3 > On Samstag 27 Juni 2009, Mark Knecht wrote:
4 >> Copying Nikos as I think he may have the answer right on the tip of his
5 >> tongue. Bulk of message posted at the bottom.
6 >>
7 >> On Sat, Jun 27, 2009 at 10:32 AM, Mark Knecht<markknecht@×××××.com> wrote:
8 >> > On Sat, Jun 27, 2009 at 10:27 AM, Mark Knecht<markknecht@×××××.com> wrote:
9 >> >> On Sat, Jun 27, 2009 at 10:25 AM, Mark Knecht<markknecht@×××××.com>
10 > wrote:
11 >> >>> On Sat, Jun 27, 2009 at 10:18 AM, Alan McKinnon<alan.mckinnon@×××××.com>
12 > wrote:
13 >> >>>> On Saturday 27 June 2009 19:10:43 Mark Knecht wrote:
14 >> >>>>> On Sat, Jun 27, 2009 at 2:34 AM, Alan
15 >> >>>>> McKinnon<alan.mckinnon@×××××.com>
16 >> >>>>
17 >> >>>> wrote:
18 >> >>>>> > On Saturday 27 June 2009 06:24:12 Mark Knecht wrote:
19 >> >>>>> >> On Fri, Jun 26, 2009 at 12:30 PM, Alan
20 >> >>>>> >> McKinnon<alan.mckinnon@×××××.com>
21 >> >>>>> >
22 >> >>>>> > wrote:
23 >> >>>>> >> > On Friday 26 June 2009 21:05:01 Mark Knecht wrote:
24 >> >>>>> >> >> So the weirdness continues. mesa built but then xorg-server
25 >> >>>>> >> >> failed with the same failure:
26 >> >>>>> >> >>
27 >> >>>>> >> >>
28 >> >>>>> >> >>  * >>> SetUID: [chmod go-r] /usr/bin/Xorg ...
29 >> >>>>> >> >>                        [ ok ]
30 >> >>>>> >> >>
31 >> >>>>> >> >> Switching to xorg-x11 OpenGL interface...ln: creating symbolic
32 >> >>>>> >> >> link `./libglx.so': File exists
33 >> >>>>> >> >> !!! Error: Failed to create /lib/libglx.so
34 >> >>>>> >> >
35 >> >>>>> >> > Looks like you have a file collision between xorg-server and
36 >> >>>>> >> > mesa, which is odd as those packages get a lot of testing.
37 >> >>>>> >> >
38 >> >>>>> >> > Anything on bugs.gentoo.org?
39 >> >>>>> >>
40 >> >>>>> >> Unfortunately it seem that there are bug reports on this and more
41 >> >>>>> >> unfortunately they have apparently been going on nearly a year
42 >> >>>>> >> now. It's not a Gentoo thing specifically as there are Ubuntu,
43 >> >>>>> >> Debian and other distros with reports in their forums.
44 >> >>>>> >>
45 >> >>>>> >> There was a possible by hand fix for it but I'll need to look at
46 >> >>>>> >> that over the weekend to see if it makes sense on this machine.
47 >> >>>>> >>
48 >> >>>>> >> Bummer. I hate banging my head up against a wall made of problems
49 >> >>>>> >> no one seems to be fixing.
50 >> >>>>> >>
51 >> >>>>> >> http://bugs.gentoo.org/247685
52 >> >>>>> >
53 >> >>>>> > The fix seems (in principle at least) to be brain-dead easy:
54 >> >>>>> >
55 >> >>>>> > - all ebuilds that merge opengl files should put them in distinct
56 >> >>>>> > locations by name to avoid collisions
57 >> >>>>> > - the contents of /usr/lib64/opengl/xorg-x11/extensions/ should be
58 >> >>>>> > symlinks with a sane default put there by xorg-server and modified
59 >> >>>>> > by eselect
60 >> >>>>> >
61 >> >>>>> > Nikos's comments are especially sane in that thread. Perhaps he'll
62 >> >>>>> > come along, see this thread and help you out further.
63 >> >>>>> >
64 >> >>>>> > I suspect that the temporary workaround will be to delete a symlink
65 >> >>>>> > and emerge stuff, then remember to always do this on every future
66 >> >>>>> > re-emerge
67 >> >>>>> >
68 >> >>>>> > --
69 >> >>>>> > alan dot mckinnon at gmail dot com
70 >> >>>>>
71 >> >>>>> In concept it does seem fairly straight forward, but to some extent
72 >> >>>>> I'm not clear why my previous attempts didn't work, unless the
73 >> >>>>> questionable files remained behind. What I attempted to do was
74 >> >>>>> completely remove everything X, but I probably didn't specifically
75 >> >>>>> remove the stuff in /usr/lib/opengl/xorg-x11/extensions. I was
76 >> >>>>> expecting the emerge to do that.
77 >> >>>>
78 >> >>>> According to the bug report you mentioned earlier, the ebuild is
79 >> >>>> attempting to perform eselect too late in the process, which fails,
80 >> >>>> and the ebuild immediately exits.
81 >> >>>>
82 >> >>>> So it's not surprising that dodgy files are left behind which you must
83 >> >>>> remove manually.
84 >> >>>>
85 >> >>>> --
86 >> >>>> alan dot mckinnon at gmail dot com
87 >> >>>
88 >> >>> So I'm little confused by a couple of the postings in that report. I
89 >> >>> did emerge -C glproto/eselect/mesa/xorg-server and then made sure
90 >> >>> there was nothing left in those directories at all. Should I emerge
91 >> >>> eselect, manually do a select, and then emerge the rest of the files?
92 >> >>>
93 >> >>> Or emerge eselect and maybe mesa, do the eselect, then xorg-server?
94 >> >>>
95 >> >>> mesa is currently building. glproto created
96 >> >>> /usr/lib/opengl/xorg-x11/include, but the other two directories are
97 >> >>> there yet.
98 >> >>>
99 >> >>> Cheers,
100 >> >>> Mark
101 >> >>
102 >> >> With mesa building in screen I tried the eselect step. It completes
103 >> >> normally but the extensions directory isn't there yet so there's
104 >> >> nothing to check.
105 >> >>
106 >> >> [detached]
107 >> >> myth12 ~ # eselect opengl list
108 >> >> Available OpenGL implementations:
109 >> >>  [1]   xorg-x11 *
110 >> >> myth12 ~ # eselect opengl set 1
111 >> >> Switching to xorg-x11 OpenGL interface... done
112 >> >> myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/
113 >> >> total 12
114 >> >> drwxr-xr-x 3 root root 4096 Jun 27 10:20 .
115 >> >> drwxr-xr-x 4 root root 4096 Jun 27 10:20 ..
116 >> >> drwxr-xr-x 2 root root 4096 Jun 27 10:20 include
117 >> >> myth12 ~ #
118 >> >
119 >> > Ok, with mesa finished building there are now two more directories
120 >> > with some header files added in include and some links and files in
121 >> > lib:
122 >> >
123 >> > myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/
124 >> > total 20
125 >> > drwxr-xr-x 5 root root 4096 Jun 27 10:28 .
126 >> > drwxr-xr-x 4 root root 4096 Jun 27 10:20 ..
127 >> > drwxr-xr-x 2 root root 4096 Jun 27 10:28 extensions
128 >> > drwxr-xr-x 2 root root 4096 Jun 27 10:28 include
129 >> > drwxr-xr-x 2 root root 4096 Jun 27 10:28 lib
130 >> > myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/extensions/
131 >> > total 8
132 >> > drwxr-xr-x 2 root root 4096 Jun 27 10:28 .
133 >> > drwxr-xr-x 5 root root 4096 Jun 27 10:28 ..
134 >> > myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/include/
135 >> > total 716
136 >> > drwxr-xr-x 2 root root   4096 Jun 27 10:28 .
137 >> > drwxr-xr-x 5 root root   4096 Jun 27 10:28 ..
138 >> > -rw-r--r-- 1 root root  90752 Jun 27 10:28 gl.h
139 >> > -rw-r--r-- 1 root root 461180 Jun 27 10:28 glext.h
140 >> > -rw-r--r-- 1 root root  17155 Jun 27 10:28 glx.h
141 >> > -rw-r--r-- 1 root root  34142 Jun 27 10:28 glxext.h
142 >> > -rw-r--r-- 1 root root   2453 Jun 27 10:20 glxmd.h
143 >> > -rw-r--r-- 1 root root  77887 Jun 27 10:20 glxproto.h
144 >> > -rw-r--r-- 1 root root  10613 Jun 27 10:20 glxtokens.h
145 >> > myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/lib
146 >> > total 456
147 >> > drwxr-xr-x 2 root root   4096 Jun 27 10:28 .
148 >> > drwxr-xr-x 5 root root   4096 Jun 27 10:28 ..
149 >> > -rw-r--r-- 1 root root    743 Jun 27 10:28 libGL.la
150 >> > lrwxrwxrwx 1 root root     12 Jun 27 10:28 libGL.so -> libGL.so.1.2
151 >> > lrwxrwxrwx 1 root root     12 Jun 27 10:28 libGL.so.1 -> libGL.so.1.2
152 >> > -rwxr-xr-x 1 root root 448056 Jun 27 10:28 libGL.so.1.2
153 >> > myth12 ~ #
154 >> >
155 >> > Still no problem doing a set in eselect. OK so far... (I think)
156 >> >
157 >> > myth12 ~ # eselect opengl list
158 >> > Available OpenGL implementations:
159 >> >  [1]   xorg-x11 *
160 >> > myth12 ~ # eselect opengl set 1
161 >> > Switching to xorg-x11 OpenGL interface... done
162 >> > myth12 ~ #
163 >> >
164 >> > Now I'll emerge xorg-server.
165 >> >
166 >> > Cheers,
167 >> > Mark
168 >>
169 >> OK - so now I'm not so sure what the correct next step is. The
170 >> xorg-server emerge completed cleanly but the contents of the
171 >> extensions directory are a single file, not a link and now eselect
172 >> opengl set 1 fails:
173 >>
174 >> myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/
175 >> total 20
176 >> drwxr-xr-x 5 root root 4096 Jun 27 10:28 .
177 >> drwxr-xr-x 4 root root 4096 Jun 27 10:20 ..
178 >> drwxr-xr-x 2 root root 4096 Jun 27 10:57 extensions
179 >> drwxr-xr-x 2 root root 4096 Jun 27 10:28 include
180 >> drwxr-xr-x 2 root root 4096 Jun 27 10:28 lib
181 >> myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/extensions/
182 >> total 340
183 >> drwxr-xr-x 2 root root   4096 Jun 27 10:57 .
184 >> drwxr-xr-x 5 root root   4096 Jun 27 10:28 ..
185 >> -rwxr-xr-x 1 root root 334456 Jun 27 10:57 libglx.so
186 >> myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/include/
187 >> total 716
188 >> drwxr-xr-x 2 root root   4096 Jun 27 10:28 .
189 >> drwxr-xr-x 5 root root   4096 Jun 27 10:28 ..
190 >> -rw-r--r-- 1 root root  90752 Jun 27 10:28 gl.h
191 >> -rw-r--r-- 1 root root 461180 Jun 27 10:28 glext.h
192 >> -rw-r--r-- 1 root root  17155 Jun 27 10:28 glx.h
193 >> -rw-r--r-- 1 root root  34142 Jun 27 10:28 glxext.h
194 >> -rw-r--r-- 1 root root   2453 Jun 27 10:20 glxmd.h
195 >> -rw-r--r-- 1 root root  77887 Jun 27 10:20 glxproto.h
196 >> -rw-r--r-- 1 root root  10613 Jun 27 10:20 glxtokens.h
197 >> myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/lib/
198 >> total 456
199 >> drwxr-xr-x 2 root root   4096 Jun 27 10:28 .
200 >> drwxr-xr-x 5 root root   4096 Jun 27 10:28 ..
201 >> -rw-r--r-- 1 root root    743 Jun 27 10:28 libGL.la
202 >> lrwxrwxrwx 1 root root     12 Jun 27 10:28 libGL.so -> libGL.so.1.2
203 >> lrwxrwxrwx 1 root root     12 Jun 27 10:28 libGL.so.1 -> libGL.so.1.2
204 >> -rwxr-xr-x 1 root root 448056 Jun 27 10:28 libGL.so.1.2
205 >> myth12 ~ #
206 >>
207 >>
208 >> myth12 ~ # eselect opengl list
209 >> Available OpenGL implementations:
210 >>   [1]   xorg-x11
211 >> myth12 ~ # eselect opengl set 1
212 >> Switching to xorg-x11 OpenGL interface...ln: creating symbolic link
213 >> `./libglx.so': File exists
214 >> !!! Error: Failed to create lib/libglx.so
215 >> Killed
216 >> myth12 ~ #
217 >>
218 >>
219 >>
220 >> myth12 ~ # slocate libglx.so
221 >> /usr/lib/opengl/xorg-x11/extensions/libglx.so
222 >> /usr/lib/xorg/modules/extensions/libglx.so
223 >> myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/extensions/libglx.so
224 >> -rwxr-xr-x 1 root root 334456 Jun 27 10:57
225 >> /usr/lib/opengl/xorg-x11/extensions/libglx.so
226 >> myth12 ~ # ls -al /usr/lib/xorg/modules/extensions/libglx.so
227 >> lrwxrwxrwx 1 root root 42 Jun 23 16:42
228 >> /usr/lib/xorg/modules/extensions/libglx.so ->
229 >> //usr//lib/opengl/ati/extensions/libglx.so
230 >> myth12 ~ #
231 >>
232 >>
233 >> The second one is a link that I suppose it broken because it's showing
234 >> up in red. However I don't know if it was there after removing
235 >> everything and redoing the emerges as I didn't check for it.
236 >>
237 >> Basically, if the 'thing' in extensions is supposed to be a link, then
238 >> where is the real libglx.so supposed to go?
239 >>
240 >> Con-fuzed...
241 >>
242 >> - Mark
243 >
244 > /usr/lib64/opengl/ati/extensions/libglx.so
245 > /usr/lib64/opengl/xorg-x11/extensions/libglx.so
246 >
247 > is where libglx.so belongs
248 >
249 > /usr/lib64/xorg/modules/extensions/libglx.so
250 >
251 > is the symlink
252 >
253 > so, why not follow the instructions in the bug, that was posted in the thread?
254 >
255 >
256 >
257
258 Which is what I got by doing a reinstall. So what's the problem?
259
260 myth12 ~ # ls -al /usr/lib/opengl/xorg-x11/extensions/libglx.so
261 -rwxr-xr-x 1 root root 334456 Jun 27 12:56
262 /usr/lib/opengl/xorg-x11/extensions/libglx.so
263 myth12 ~ # ls -al /usr/lib/xorg/modules/extensions/libglx.so
264 lrwxrwxrwx 1 root root 45 Jun 27 13:00
265 /usr/lib/xorg/modules/extensions/libglx.so ->
266 /usr/lib/opengl/xorg-x11/extensions/libglx.so
267 myth12 ~ #
268
269 As always...
270
271 - Mark

Replies

Subject Author
Re: [gentoo-user] mesa build failure Volker Armin Hemmann <volkerarmin@××××××××××.com>