CMake и Boost

Я искал и обнаружил, что у многих людей такая же проблема, но решения не существует.

Я использую CMake для генерации Makefiles для MinGW и при компиляции я получаю сообщение об ошибке:

CMakeFiles\boosttest.dir/objects.a(main.cpp.obj):main.cpp:(.text+0x5e): undefined reference to `_imp___ZN5boost6thread4joinEv'
CMakeFiles\boosttest.dir/objects.a(main.cpp.obj):main.cpp:(.text+0x71): undefined reference to `_imp___ZN5boost6threadD1Ev'
CMakeFiles\boosttest.dir/objects.a(main.cpp.obj):main.cpp:(.text+0x88): undefined reference to `_imp___ZN5boost6threadD1Ev'

Кажется, это проблема связывания, я понимаю. Моя конфигурация CMake:

project(boosttest)
cmake_minimum_required(VERSION 2.6)

include_directories(${boosttest_SOURCE_DIR}/include c:/boost_1_48_0/)
link_directories(c:/boost_1_48_0/lib)

file(GLOB_RECURSE cppFiles src/*.cpp)

add_executable(boosttest ${cppFiles})

target_link_libraries(boosttest libboost_thread-mgw46-mt-1_48.a)

Сначала я попробовал использоватьfind_package(Boost COMPONENTS thread) и он работал так же, поэтому я подумал, чтобы попытаться сделать это вручную, и я все еще получаю ту же ошибку.

Есть идеи по этому поводу?

Я скомпилировал его для mingw, используя bjam и как статическую ссылку. Также попытался сделать:

add_library(imp_libboost_thread STATIC IMPORTED)
set_property(TARGET imp_libboost_thread PROPERTY IMPORTED_LOCATION c:/boost_1_48_0/lib/libboost_thread-mgw46-mt-1_48.a)
target_link_libraries(boosttest imp_libboost_thread)

И я все еще получаю те же сообщения об ошибках.

Ответы на вопрос(2)

Ваш ответ на вопрос