cmake - C++ SPDLOG compilation error: variable or field ‘set_error_handler’ declared void -


i'm trying use spdlog in project. according spdlog docu, need copy files under include folder , use c++ 11 compiler.

i copied /include/spdlog folder project root folder i'm having lot of errors after trying build project. ff:

/home/project/documents/project-server/spdlog/spdlog.h:46:39: error: variable or field ‘set_error_handler’ declared void void set_error_handler(log_err_handler);                                    ^ /home/project/documents/project-server/spdlog/spdlog.h:46:24: error: ‘log_err_handler’ not declared in scope  void set_error_handler(log_err_handler);                     ^ in file included /home/project/documents/project-server/main.cpp:13:0: /home/project/documents/project-server/spdlog/spdlog.h:74:79: error: ‘filename_t’ not name type  std::shared_ptr<logger> basic_logger_mt(const std::string& logger_name, const filename_t& filename, bool truncate = false);                                                                            ^ /home/project/documents/project-server/spdlog/spdlog.h:75:79: error: ‘filename_t’ not name type  std::shared_ptr<logger> basic_logger_st(const std::string& logger_name, const filename_t& filename, bool truncate = false);                                                                            ^ /home/project/documents/project-server/spdlog/spdlog.h:80:82: error: ‘filename_t’ not name type  std::shared_ptr<logger> rotating_logger_mt(const std::string& logger_name, const filename_t& filename, size_t max_file_size, size_t max_files); 

i have tried adding following in cmakelists.txt

target_include_directories(projectname interface spdlog)  include_directories(spdlog)  target_link_libraries(projectname .... -libspdlog-dev) 

(i installed libspdlog-dev)

add_subdirectory(spdlog) 

but none of above works. know how can fix this? lot!

as written in spdlogs docu @ bottom, can a

find_package(spdlog config) 

this provides imported interface library spdlog::spdlog, can use

target_link_library(my_library public spdlog::spdlog) 

(as seen in spdlog/examples/cmakelists.txt)


Comments

Popular posts from this blog

python - Selenium remoteWebDriver (& SauceLabs) Firefox moseMoveTo action exception -

html - How to custom Bootstrap grid height? -

transpose - Maple isnt executing function but prints function term -