MantisBT - CMake
View Issue Details
0010304CMakeModulespublic2010-02-16 17:572011-05-26 00:37
Betz, Daniel 
Philip Lowman 
normalmajoralways
closedunable to reproduce 
CMake-2-8 
 
0010304: FindBoost.cmake can't handle new filename layout of boost
I seems that boost doesn't use the "mt" postfix any longer for the
default filename layout of the library files. This means that
linking to i.e. boost_program_options failles because the switch is
-lboost_program_options-mt instead of -lboost_program_options.


Part of the output of "bjam --help":
...
  --layout=<layout> Determines whether to choose library names
                          and header locations such that multiple
                          versions of Boost or multiple compilers can
                          be used on the same system.

                              versioned - Names of boost binaries
                              include the Boost version number, name and
                              version of the compiler and encoded build
                              properties. Boost headers are installed in a
                              subdirectory of <HDRDIR> whose name contains
                              the Boost version number.

                              tagged -- Names of boost binaries include the
                              encoded build properties such as variant and
                              threading, but do not including compiler name
                              and version, or Boost version. This option is
                              useful if you build several variants of Boost,
                              using the same compiler.

                              system - Binaries names do not include the
                              Boost version number or the name and version
                              number of the compiler. Boost headers are
                              installed directly into <HDRDIR>. This option
                              is intended for system integrators who are
                              building distribution packages.

                          The default value is 'versioned' on Windows, and
                          'system' on Unix.
...

Because my system is linux and therefore the default layout is 'system', there
is no multi threading indicator in the filename.


boost version 1.41

See also https://bugs.kde.org/show_bug.cgi?id=227275 [^]
No tags attached.
? FindBoost.cmake (54,757) 2010-09-11 00:12
https://public.kitware.com/Bug/file/3377/FindBoost.cmake
Issue History
2010-02-16 17:57Betz, DanielNew Issue
2010-09-10 23:52Philip LowmanStatusnew => assigned
2010-09-10 23:52Philip LowmanAssigned To => Philip Lowman
2010-09-11 00:12Philip LowmanFile Added: FindBoost.cmake
2010-09-11 00:17Philip LowmanNote Added: 0022189
2010-09-12 05:55Betz, DanielNote Added: 0022193
2010-09-12 12:53Philip LowmanNote Added: 0022194
2010-09-18 13:35Philip LowmanNote Added: 0022264
2011-05-26 00:37Philip LowmanNote Added: 0026609
2011-05-26 00:37Philip LowmanStatusassigned => closed
2011-05-26 00:37Philip LowmanResolutionopen => unable to reproduce

Notes
(0022189)
Philip Lowman   
2010-09-11 00:17   
I'm kind of confused by this report. I've attached the latest FindBoost which is slated to go into 2.8.3. I did add one filename pattern to it recently. I think it may work against all 3 types of filename layouts, but I'm not sure. Could you post an example of a generated library filename for each?

Here's an example of the search order for release libraries with Boost_USE_MULTITHREADED enabled (the default).

boost_system-gcc44-mt-1_44
boost_system-gcc44-mt
boost_system-mt-1_44
boost_system-mt
boost_system
(0022193)
Betz, Daniel   
2010-09-12 05:55   
Unfortunately I am not at home until next weekend and
I have no appropriate system available here to test your
new version of the cmake module.

Also the bug report is somewhat old and I updated my KDE
system since then a few times. (The issue appeared in
the akonadiserver associated with KDE 4.4.0 as you see
in https://bugs.kde.org/show_bug.cgi?id=227275 [^])
(0022194)
Philip Lowman   
2010-09-12 12:53   
I think there will be a 2.8.3 RC out by next weekend that you can test with. If there are any issues with FindBoost I can address them then. If not, we'll just close the ticket.
(0022264)
Philip Lowman   
2010-09-18 13:35   
RC1 doesn't contain the latest FindBoost code due to a CM snafu. The version attached to this report should suffice for testing. You can use set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}) and place it in the same directory as your source tree to test with it.

If FindBoost isn't working properly, please set Boost_DEBUG to ON blow away your build tree and reconfigure and then include the output here in the bug report.
(0026609)
Philip Lowman   
2011-05-26 00:37   
If this issue still is causing you problems and isn't resolved with the latest version of CMake, please reopen or file a new ticket with more information. Thanks.