[CMake] Win64 and InstallRequiredSystemLibraries.cmake

Clinton Stimpson clinton at elemtech.com
Thu Nov 13 15:42:18 EST 2008


That fixes it for me too.

Thanks,
Clint

David Cole wrote:
> This fixes it for me:
>
> .......
>   GET_FILENAME_COMPONENT(devenv_dir "${CMAKE_MAKE_PROGRAM}" PATH)
>   GET_FILENAME_COMPONENT(base_dir "${devenv_dir}/../.." ABSOLUTE)
>
>   IF(MSVC80)
>     # Find the runtime library redistribution directory.
>     FIND_PATH(MSVC80_REDIST_DIR NAMES 
> ${CMAKE_MSVC_ARCH}/Microsoft.VC80.CRT/Microsoft.VC80.CRT.manifest
>       PATHS
>        
>  "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0;InstallDir]/../../VC/redist"
>         "${base_dir}/VC/redist"
>       )
> .......
>
> If you could verify that it works for you, too, I will commit this to 
> CVS HEAD of CMake and request that it be merged for the next drop of 
> the 2.6 branch also.
>
>
> Thanks,
> David
>
>
> On Thu, Nov 13, 2008 at 2:08 PM, Clinton Stimpson 
> <clinton at elemtech.com <mailto:clinton at elemtech.com>> wrote:
>
>
>     I see in the cmake code that if I pick the Win64 generator, cmake
>     takes a 64 bit view of the registry and tries to find things.
>      That makes sense to me in general, such as finding 64 bit python,
>     based on registry keys, etc...  But Visual Studio itself is a 32
>     bit application, and the 64 bit redist is contained in it.
>
>     I guess I'll put this in the bug tracker.
>
>     Thanks,
>     Clint
>
>     Clinton Stimpson wrote:
>
>
>         The Process Explorer verifies its a 32 bit image.
>
>         My CMakeLists.txt file ===
>         INCLUDE(InstallRequiredSystemLibraries)
>         ===== end file
>
>         In cmake-gui, if I pick the "Visual Studio 8 2005" generator,
>         it sets MSVC80_REDIST_DIR correctly.
>         If I go back File -> Delete Cache, then hit configure again,
>         but choose "Visual Studio 8 2005 Win64" as the generator, then
>         MSVC80_REDIST_DIR is not found.
>
>         Clint
>
>         David Cole wrote:
>
>             It's looking in the right place. You're using the 64-bit
>             regedit. If you view it with the 32-bit regedit (found,
>             paradoxically, at C:\WINDOWS\SysWOW64\regedit.exe) then
>             you'll see it as 32-bit cmake is asking for it...
>
>             Side note: you can always use Process Explorer from
>             sysinternals.com <http://sysinternals.com>
>             <http://sysinternals.com> to examine running processes to
>             determine if they are 32-bit or 64-bit if you need to. I
>             would say Process Explorer is the most indispensable tool
>             that exists on Windows.
>
>             So you include InstallRequiredSystemLibraries and what
>             happens?
>
>
>             On Thu, Nov 13, 2008 at 12:43 PM, Clinton Stimpson
>             <clinton at elemtech.com <mailto:clinton at elemtech.com>
>             <mailto:clinton at elemtech.com
>             <mailto:clinton at elemtech.com>>> wrote:
>
>                On 64 bit Windows...
>                When I run cmake, the
>             InstallRequiredSystemLibraries.cmake is not
>                finding the MSVC80_REDIST_DIR automatically.
>                It looks in
>              
>              [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0;InstallDir]
>                for it, but its not there when I run regedit.
>                Its actually in
>              
>              [HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\8.0;InstallDir].
>
>
>                Is there some way to make this work without me helping
>             it along?
>                 Maybe its a more general issue?
>
>                This is using the cmake 2.6.2 binaries from cmake.org
>             <http://cmake.org>
>                <http://cmake.org>.
>
>                Clint
>
>                _______________________________________________
>                CMake mailing list
>                CMake at cmake.org <mailto:CMake at cmake.org>
>             <mailto:CMake at cmake.org <mailto:CMake at cmake.org>>
>                http://www.cmake.org/mailman/listinfo/cmake
>
>
>
>         _______________________________________________
>         CMake mailing list
>         CMake at cmake.org <mailto:CMake at cmake.org>
>         http://www.cmake.org/mailman/listinfo/cmake
>
>
>     _______________________________________________
>     CMake mailing list
>     CMake at cmake.org <mailto:CMake at cmake.org>
>     http://www.cmake.org/mailman/listinfo/cmake
>
>



More information about the CMake mailing list