0
はブーストを使用し、次のプログラム::ライブラリを構築しようとすると、新しいロガーを作成しようとBoost.Logエラー:C++ - 名前空間
#include <string>
#include <boost/log/core.hpp>
#include <boost/log/trivial.hpp>
#include <boost/log/expressions.hpp>
class TestClass
{
...
boost::log::sources::logger lg;
};
このファイルを構築するための私のcmakeのファイル:
set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
set(Boost_USE_STATIC_RUNTIME OFF)
find_package(Boost 1.63.0
COMPONENTS system
filesystem
log
log_setup
thread
unit_test_framework
REQUIRED)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
file(GLOB PROJECT_SOURCES sources/*.cpp
sources/configuration/*.cpp)
file(GLOB PROJECT_HEADERS sources/*.h
sources/configuration/*.h)
add_executable(${PROJECT_NAME}
${PROJECT_SOURCES}
${PROJECT_HEADERS})
target_link_libraries(${PROJECT_NAME}
${Boost_LIBRARIES}
Boost::log)
しかし、私は次のエラーを取得リンク時:私の名前空間boost::log::sources
がに変換されるのはなぜ
error: 'logger' in namespace 'boost::log::v2_mt_nt5::sources' does not name a type
boost::log::sources::logger log;
をboost::log::v2_mt_nt5::sources
?この問題を解決するには?あなたは、単にincludeディレクティブ欠けている
それは 'ブースト:: log'をtarget_link_libraries''内で動作しますか? 'Boost :: log.lib'を見つけることができないというエラーメッセージが出る –