problems building glew 1.6.0

Hi everyone, the glew from the repositories wasn’t working properly for me–the version in the official repo’s did not set a version, and the newer ones off of OBS claimed I had OpenGL v. 2.1, when I have 3.3, and neither was properly setting some function pointers. So I installed from source, and, since the version of glew had been out for a couple months, I decided to try to put it up on the build service. The source distribution just has what looks like a handwritten makefile, no configure script.

Well, I still feel like I have no idea what I am doing, but by hook or crook I have managed to get it to build locally with rpmbuild, but on OBS I can’t get rid of one error (I’ll worry about the warnings later)–the one that says that my package should be named after the SONAME of the library. Or, more precisely:

glew.x86_64: E: shlib-policy-name-error (Badness: 10000) libGLEW1_6
Your package contains a single shared library but is not named after its

But I have no idea how to get there from here, because I don’t know how to set the name of the rpm that is produced by the OBS. Changing the name value in the spec file won’t be easy, since I’ve used that in the spec file to refer to the tarball, directory names, etc., and besides that can’t be the answer, because the standard seems to require a different base name for the library and for the devel package, with the former including a version number. So, I need the output of OBS to meet the name requirements given in openSUSE:Shared library packaging policy - openSUSE, to come out of the project that I have on OBS. But I don’t see anything on how to get an OBS project to create packages with those names, just what names I have to create, and to be honest I’m still not entirely sure I know what names I’m suppose to be using anyway.

What should I do now? I suppose at this point I just want to see it done because it has been such a pita; I prefer not giving up, but I am too frustrated to keep on by way of unclear documentation and trial and error. I tried to find the spec files for version 1.5.8 that other people used to make the packages that are already up, but I couldn’t figure out how to get the spec file, only the packages. Does anyone know of something that would explain how to do this for someone like me who doesn’t really know what they are doing, and are sitting on a spec file that works with rpmbuild on the local system but not OBS and will probably fall apart if it is modified?

Or is there a way someone who knows what they are doing can look at my project and help me out with some advice? The most recent version is in the GLEW project under this account name, but the other ones are pretty similar I just tried starting over a couple of times.

Anyway, thanks for reading this, and I appreciate any help, and I’m sorry but this whole thing has been a total pain.


Ok, I figured it out. I’m not entirely sure how to articulate what my problem was–but it had precious little to do with that error message. On the one hand I had files installed in /usr/local that were interfering with my install that was going into /usr (btw, is that bad form? I thought, glew.h should be in the same directory as gl.h and glu.h, otherwise there would be confusion, since they would appear to be in the same directory given their #include <> lines.) Also I had to explicitly make the target “install.all” to get the binary files to install, and then after that the error message I mentioned above went away, I guess because now there are other files in the package (two binary utilities).

Anyhow, sorry for talking to myself on the forum. And I take back some of the nasty things I said about the lizard.


Edit: 100 posts! woohoo. Plus I deleted a rudundantly clause.
Edit again: it does work, I tested it, so I guess now I’ll go ahead and build it for a whole bunch of stuff on the service. Free glew for everyone! Like kindergarten.