On Thu, Dec 11, 2008 at 10:09 AM, Mike Jackson <span dir="ltr"><<a href="mailto:mike.jackson@bluequartz.net">mike.jackson@bluequartz.net</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I just pulled down the BoostPro installer and installed the headers and a few libraries. I installed to C:\Developer\VS9\boost\boost_1_36_0.<br>
<br>
I then set the environment variable BOOST_ROOT to C:\Developer\VS9\boost\boost_1_36_0</blockquote><div><br>The bug is when you don't set BOOST_ROOT. It detects the headers (Boost_INCLUDE_DIR) but not the libraries. It should either detect both the headers & libraries or fail miserably causing the user to discover BOOST_ROOT. See below for more info.<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
If you can add the following to your $CMAKE_INSTALL/share/cmake-2.6/modules/FindBoost.cmake at line 438:<br>
<br>
message(STATUS "Boost_LIB_VERSION: ${Boost_LIB_VERSION}")<br>
message(STATUS "${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION}")<br>
message(STATUS "${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION}")<br>
message(STATUS "${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}")<br>
message(STATUS "${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}")<br>
message(STATUS "${Boost_LIB_PREFIX}boost_${COMPONENT}")<br>
<br>
(there are 5 separate lines there. You may have to unwrap them from the email)<br>
<br>
Then run cmake again on a clean build directory and post the output.<br>
<br>
I get the following:<br>
<br>
-- Boost_LIB_VERSION: 1_36<br>
-- boost_program_options-vc90-mt-1_36<br>
-- boost_program_options-vc90-mt-1_36<br>
-- boost_program_options-mt<br>
-- boost_program_options-mt<br>
-- boost_program_options<br>
<br>
If your Boost_LIB_VERSION is empty then that is the first problem.</blockquote><div><br>Here's the output (looks good).<br>
<br>
Boost_LIB_VERSION: 1_36
<p style="margin: 0px; text-indent: 0px;">boost_filesystem-vc80-mt-1_36</p>
<p style="margin: 0px; text-indent: 0px;">boost_filesystem-vc80-mt-1_36</p>
<p style="margin: 0px; text-indent: 0px;">boost_filesystem-mt</p>
<p style="margin: 0px; text-indent: 0px;">boost_filesystem-mt</p>
<p style="margin: 0px; text-indent: 0px;">boost_filesystem</p>
<p style="margin: 0px; text-indent: 0px;"><br>
</p>
None of that output is the problem, here I think is the issue. Somehow Boost_FIND_VERSION_MAJOR, etc. looks to be being squashed?<br><br>_boost_LIBRARIES_SEARCH_DIRS = <br>C:/boost/lib;C:/boost;C:\Program Files/boost/boost___/lib;C:\Program Files/Boost;/sw/local/lib<br>
<br>Here's the configuration:<br>
CMake 2.6.2, BoostPro 1.36.0 (all VS8 libs installed), Visual Studio C++ 2005 Express<br><br>Just unset BOOST_ROOT and hopefully you'll be able to reproduce it<br>
<br>
CMakeLists.txt:<br>============<br>
PROJECT(Foo)<br>
FIND_PACKAGE(Boost COMPONENTS filesystem)<br clear="all"><br>Cache variables are:<br>============<br>Boost_FILESYSTEM_LIBRARY_DEBUG = ...NOTFOUND<br>Boost_FILESYSTEM_LIBRARY_RELEASE = ...NOTFOUND<br>Boost_INCLUDE_DIR = C:/Program Files/boost/boost_1_36_0<br>
Boost_LIB_DIAGNOSTIC_DEFINITIONS = -DBOOST_LIB_DIAGNOSTIC<br>Boost_USE_MULTITHREADED =On<br><br><br></div></div>-- <br>Philip Lowman<br>