[ 98%] Linking CXX shared library kaacpp.dll
DefaultLogger.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) private: static unsigned int __cdecl boost::log::v2_mt_nt5::attribute_name::get_id_from_string(char const *)" (__imp_?get_id_from_string@attribute_name@v2_mt_nt5@log@boost@@CAIPBD@Z) referenced in function "public: __thiscall boost::log::v2_mt_nt5::attribute_name::attribute_name(char const *)" (??0attribute_name@v2_mt_nt5@log@boost@@QAE@PBD@Z)
=== output omitted (same error from DefaultLogger.cpp.obj, lots of lines ...)
DefaultLogger.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl boost::log::v2_mt_nt5::aux::operator<<<char,struct std::char_traits<char> >(class std::basic_ostream<char,struct std::char_traits<char> > &,class boost::log::v2_mt_nt5::aux::id<struct boost::log::v2_mt_nt5::aux::thread> const &)" (__imp_??$?6DU?$char_traits@D@std@@@aux@v2_mt_nt5@log@boost@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@AAV45@ABV?$id@Uthread@aux@v2_mt_nt5@log@boost@@@0123@@Z) referenced in function "class boost::log::v2_mt_nt5::basic_formatting_ostream<char,struct std::char_traits<char>,class std::allocator<char> > & __cdecl boost::log::v2_mt_nt5::operator<<<class boost::log::v2_mt_nt5::basic_formatting_ostream<char,struct std::char_traits<char>,class std::allocator<char> >,class boost::log::v2_mt_nt5::aux::id<struct boost::log::v2_mt_nt5::aux::thread> >(class boost::log::v2_mt_nt5::basic_formatting_ostream<char,struct std::char_traits<char>,class std::allocator<char> > &,class boost::log::v2_mt_nt5::aux::id<struct boost::log::v2_mt_nt5::aux::thread> const &)" (??$?6V?$basic_formatting_ostream@DU?$char_traits@D@std@@V?$allocator@D@2@@v2_mt_nt5@log@boost@@V?$id@Uthread@aux@v2_mt_nt5@log@boost@@@aux@123@@v2_mt_nt5@log@boost@@YAAAV?$basic_formatting_ostream@DU?$char_traits@D@std@@V?$allocator@D@2@@012@AAV3012@ABV?$id@Uthread@aux@v2_mt_nt5@log@boost@@@aux@012@@Z)
kaacpp.dll : fatal error LNK1120: 40 unresolved externals
LINK Pass 1 failed. with 1120
NMAKE : fatal error U1077: 'D:\software\cmake\bin\cmake.exe' : return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Visual Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Visual Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
But, in your build plan, there is no command that creates a solution file. How did you have changed the debug/release configuration ?
Do you mean by using the add_definitions command from cmake and rebuild the process after ?
add_definitions(-D_WIN32_WINNT=0x0A00)
add_definitions(-DBOOST_LOG_DYN_LINK=1)
message("definitions set")
D:\software\KaaThirdParty\debug\lib\boost_log-vc140-mt-gd-1_60.lib : warning LNK4272: library machine type 'x64' conflicts with target machine type 'X86'(there are other similar errors for the other required boost files)
if (WIN32 AND NOT CYGWIN AND NOT MSYS)
# START ADDITION
if (CMAKE_SYSTEM_VERSION)
string(REGEX REPLACE "^([0-9])\\.([0-9]).*" "0\\10\\2" version ${CMAKE_SYSTEM_VERSION})
add_definitions(-D_WIN32_WINNT=0x${version})
endif()
# END ADDITION
add_definitions (/EHs)
add_definitions (
-DBOOST_REGEX_DYN_LINK
-DBOOST_FILESYSTEM_DYN_LINK
-DBOOST_SYSTEM_DYN_LINK
-DBOOST_PROGRAM_OPTIONS_DYN_LINK
-DBOOST_LOG_DYN_LINK
-DBOOST_ALL_NO_LIB)
else()
add_definitions (${Boost_LIB_DIAGNOSTIC_DEFINITIONS} -DBOOST_LOG_DYN_LINK)
endif()
D:\kaa\kaa-cpp-ep-sdk-bW0P-V3\build>cmake -G "NMake Makefiles" -DKAA_DEBUG_ENABLED=1 -DCMAKE_INSTALL_PREFIX=%KAA_APP_THIRDPARTY_HOME%\debug ..
==================================
A subdirectory or file avro\event already exists.
CMake Warning (dev) at CMakeLists.txt:73 (if):
Policy CMP0054 is not set: Only interpret if() arguments as variables or
keywords when unquoted. Run "cmake --help-policy CMP0054" for policy
details. Use the cmake_policy command to set the policy and suppress this
warning.
Quoted variables like "MSVC" will no longer be dereferenced when the policy
is set to NEW. Since the policy is not set the OLD behavior will be used.
This warning is for project developers. Use -Wno-dev to suppress it.
==================================
KAA_MAX_LOG_LEVEL=6
EVENTS ENABLED
NOTIFICATIONS ENABLED
CONFIGURATION ENABLED
LOGGING ENABLED
OPERATION_TCP_CHANNEL ENABLED
OPERATION_LONG_POLL_CHANNEL ENABLED
OPERATION_HTTP_CHANNEL ENABLED
BOOTSTRAP_HTTP_CHANNEL ENABLED
CONNECTIVITY_CHECKER ENABLED
KAA_THREADSAFE ENABLED
==================================
-- Boost version: 1.60.0
-- Found the following Boost libraries:
-- log
-- system
-- thread
-- date_time
-- log_setup
-- filesystem
-- regex
-- chrono
-- atomic
Looking for Avro C++ headers and libraries
-- Found Avro: D:/software/KaaThirdParty/debug/lib/avrocpp.lib
-- Include directories: D:/software/KaaThirdParty/debug/include
-- Libraries: D:/software/KaaThirdParty/debug/lib/avrocpp.lib
-- FindBotan check
-- BOTAN_HOME env is not set, setting it to /usr/local
-- Looking for botan in /usr/local
-- Include directory: D:/software/KaaThirdParty/debug/include
-- Library: D:/software/KaaThirdParty/debug/lib/botan.lib
-- WIN NT=0x10.0.10586
-- KAA WILL BE INSTALLED TO D:/software/KaaThirdParty/debug
-- Configuring done
-- Generating done
-- Build files have been written to: D:/kaa/kaa-cpp-ep-sdk-bW0P-V3/build
[100%] Linking CXX static library kaacpp_s.lib
[100%] Built target kaacpp_s
Install the project...
-- Install configuration: "DEBUG"
-- Installing: D:/software/KaaThirdParty/debug/include/kaa
-- Installing: (other files)
-- CMAKE_SYSTEM_VERSION=10.0.10586
#include "stdafx.h"
#include <iostream>
// KAA includes
#include <kaa\Kaa.hpp>
#include <kaa\log\DefaultLogUploadStrategy.hpp>
#include <kaa\log\ILogStorageStatus.hpp>
using namespace kaa;
// this uploads a log
class LogUploadStrategy : public DefaultLogUploadStrategy {
public: LogUploadStrategy(IKaaClientContext& clientContext) : DefaultLogUploadStrategy(clientContext) {}
virtual LogUploadStrategyDecision isUploadNeeded(ILogStorageStatus& status)
{
if (status.getRecordsCount() >= 1) {
return LogUploadStrategyDecision::UPLOAD;
}
return LogUploadStrategyDecision::NOOP;
}
};
// */
int main()
{
std::cout << "Kaa client started" << std::endl;
// Create a Kaa client with the Kaa desktop context.
IKaaClient& kaaClient = *Kaa::newClient();
// Set a custom strategy for uploading logs.
kaaClient.setLogUploadStrategy(std::make_shared<LogUploadStrategy>(kaaClient.getKaaClientContext()));
// Start Kaa client SDK (it also connects to the Kaa server).
kaaClient.start();
// test: create log
kaa::KaaUserLogRecord gpsLog;
gpsLog.latitude = 1.23;
gpsLog.longitude = 9.32;
// add log to kaa ... kaa log record?
kaaClient.addLogRecord(gpsLog);
// stop Kaa client SDK
kaaClient.stop();
// */
std::cout << "--= Press Enter to exit =--" << std::endl;
return 0;
}
Error LNK2019 unresolved external symbol "void __cdecl boost::detail::set_tss_data(void const *,class boost::shared_ptr<struct boost::detail::tss_cleanup_function>,void *,bool)" (?set_tss_data@detail@boost@@YAXPBXV?$shared_ptr@Utss_cleanup_function@detail@boost@@@2@PAX_N@Z) referenced in function "public: __thiscall boost::thread_specific_ptr<struct boost::log::v2_mt_nt6::sinks::basic_formatting_sink_frontend<char>::formatting_context>::~thread_specific_ptr<struct boost::log::v2_mt_nt6::sinks::basic_formatting_sink_frontend<char>::formatting_context>(void)" (??1?$thread_specific_ptr@Uformatting_context@?$basic_formatting_sink_frontend@D@sinks@v2_mt_nt6@log@boost@@@boost@@QAE@XZ) KaaCpp1 D:\Cproj\KaaCpp1\KaaCpp1\kaacpp_s.lib(DefaultLogger.cpp.obj)

PS: On this page, there is a link telling you which third party libraries you have to install to use the Kaa C++ SDK. A colleague has clicked on that link, but he ended on the installation page of the Kaa server instead of the installation page for the third party components.Where can I submit this issue ?