← Back to team overview

kicad-developers team mailing list archive

Re: Again with the glew on 10.10

 

> On Dec 11, 2014, at 11:51 AM, Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
> 
> On 12/11/2014 1:19 PM, Andy Peters wrote:
>> 
>>> On Dec 11, 2014, at 9:50 AM, Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
>>> 
>>> On 12/11/2014 11:31 AM, Andy Peters wrote:
>>>> 
>>>>> On Dec 10, 2014, at 6:05 PM, Adam Wolf <adamwolf@xxxxxxxxxxxxxxxxxxxx> wrote:
>>>>> 
>>>>> I have not seen this issue, but I am using brew for glew.
>>>>> 
>>>>> Adam Wolf
>>>>> Cofounder and Engineer
>>>>> W&L
>>>> 
>>>> I see that the header in question is in /usr/include/GL (this is where glew's make install put it), which means that the make system assumes that glew is installed someplace else. Where is that include directory specified? I can install the glew stuff to wherever, just as long as I know where it is supposed to go!
>>>> 
>>>> -a
>>> 
>>> A large part of the problem is neither KiCad's custom FindGLEW.cmake or
>>> the stock one shipped with CMake is very well thought out.  They both
>>> use the typical check for platform tests which inevitably break instead
>>> of feature tests.  Glew (at least the recent versions) will use
>>> pkg-config if it is available to create the correct configuration
>>> information which is how FindGLEW.cmake should work instead of using the
>>> platform specific paths.  Pkg-config is available on all platforms
>>> including windows so this should be the default search mechanism.  The
>>> platform specific stuff should be the fall back and there should be the
>>> catch all root path variable for custom builds which should always take
>>> precedence.  There is also the option of setting
>>> -DCMAKE_PREFIX_PATH=/usr on the command line.

Does this add to the existing prefix path, or does it replace it entirely?




>>> 
>> pkg-config is on my systems, and it should work, I agree, but something is borked.
>> 
>> I looked at FindGLEW.cmake and added the correct path to the headers:
>> 
>> IF (APPLE)
>> # These values for Apple could probably do with improvement.
>>   FIND_PATH( GLEW_INCLUDE_DIR GL/glew.h
>>     /System/Library/Frameworks/GLEW.framework/Versions/A/Headers
>>     /opt/local/include
>>     /usr/include                <- I added this!
>>     ${OPENGL_LIBRARY_DIR}
>>   )
>> 
>>   FIND_LIBRARY( GLEW_GLEW_LIBRARY GLEW
>>     /opt/local/lib
>>     /usr/lib
>>   )
> 
> This will work but is at the heart of the problem.  Adding every
> possible combination of paths is not a long term solution.
> Unfortunately it's how most of the cmake find package files are written.
> 
>> 
>> and re-ran cmake, and it didn't seem to care. I even did a make clean. I don't know if there's a "cmake clean" command which forces cmake to rebuild everything.
> 
> You have to delete all of the CMake build files in order for this to
> work.  Once the path is cached, it doesn't change even if you change the
> cmake files.  The easiest way is to do a clean build.  You could try
> `make rebuild_cache` and see if that updates the glew path.

all righty, I just deleted my entire kicad checkout and bzr branched the latest. Then I edited FindGLEW.cmake as noted above, did the build, and then it failed again at the same spot.

Follow ups

References