CMake with Boost could not find static libraries

34,998

Solution 1

I guess your compiled libraries is not in your BOOST_ROOT/lib/ folder. In this case, you need to set your lib folder directory path.

set(BOOST_LIBRARYDIR ${BOOST_ROOT}/stage/lib/)

or

set(BOOST_LIBRARYDIR path/to/your/lib/folder)

Solution 2

I have same problem

solved by using command

bjam install --prefix="<your boost install folder>" --with-system --with-date_time --with-random link=static runtime-link=shared threading=multi
Share:
34,998
Nonouf
Author by

Nonouf

Currently studying towards my masters in computer science, I consider myself to be a self-motivated, driven individual with a passion for discovering new things.

Updated on July 25, 2022

Comments

  • Nonouf
    Nonouf almost 2 years

    I have some troubles with CMake and Boost library. I have the following error :

    CMake Error at C:/Program Files (x86)/CMake
    2.8/share/cmake-2.8/Modules/FindBoost.cmake:1111 (message):   Unable to find the requested Boost libraries.
    
      Boost version: 1.55.0
    
      Boost include path: C:/local/boost_1_55_0
    
      Could not find the following static Boost libraries:
    
              boost_system
              boost_date_time
              boost_regex
    
      No Boost libraries were found.  You may need to set BOOST_LIBRARYDIR
    to the   directory containing Boost libraries or BOOST_ROOT to the
    location of   Boost. Call Stack (most recent call first):  
    CMakeLists.txt:10 (find_package)
    
    
    -- Configuring incomplete, errors occurred!
    

    I did everything I found to internet in my CMakeLists.txt but it's not working, I don't understand. I'm using Windows 8 with Visual Studio 12 and Boost is installed in the default directory. (C:/local/boost_1_55_0)

    Here my CMakeLists.txt :

    cmake_minimum_required(VERSION 2.6)
    
    project (server)
    
    set(BOOST_ROOT "c:\\local\\boost_1_55_0")
    
    set (Boost_USE_STATIC_LIBS ON) set (Boost_MULTITHREADED ON) set
    (Boost_USE_STATIC_RUNTIME OFF)
    
    find_package(Boost 1.55 COMPONENTS system date_time regex REQUIRED)
    add_definitions(${Boost_LIB_DIAGNOSTIC_DEFINITIONS})
    
    set(SRCS main.cpp Server.cpp Client.cpp)
    
    set(HEADERS Server.h Client.h)
    
    include_directories(${Boost_INCLUDE_DIR})
    
    add_executable(babel_server ${SRCS} ${HEADERS})
    
    target_link_libraries(babel_server ${Boost_LIBRARIES})
    

    Anyone can help me please ?

    Thanks