Gentoo Archives: gentoo-user

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

Replies

Subject Author
Re: [gentoo-user] mesa build failure Mark Knecht <markknecht@×××××.com>