On 12/11/2014 4:34 PM, Andy Peters wrote: > >> On Dec 11, 2014, at 11:51 AM, Wayne Stambaugh <[email protected]> wrote: >> >> On 12/11/2014 1:19 PM, Andy Peters wrote: >>> >>>> On Dec 11, 2014, at 9:50 AM, Wayne Stambaugh <[email protected]> wrote: >>>> >>>> On 12/11/2014 11:31 AM, Andy Peters wrote: >>>>> >>>>>> On Dec 10, 2014, at 6:05 PM, Adam Wolf <[email protected]> >>>>>> 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?
CMake does not define CMAKE_PREFIX_PATH. It get tested before CMAKE_SYSTEM_PREFIX_PATH which CMake sets based on the platform. The search order is documented here: http://www.cmake.org/cmake/help/v3.0/command/find_path.html > > > > >>>> >>> 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. Unfortunately (or fortunately depending on your point of view), I don't have a mac so I cannot help you with this. Maybe one of our other OSX devs can help you out. > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : [email protected] > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp > _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

