相关疑难解决方法(0)

LNK2038:检测到'boost_log_abi'不匹配:值'v2s_mt_nt5'与值'v2s_mt_nt6'不匹配

在创建包含boost库的单独头文件之后,我尝试包含在现有项目中.

但它显示以下错误:

 ::  Error  15  error LNK2038: mismatch detected for 'boost_log_abi':
 value 'v2s_mt_nt5' doesn't match value 'v2s_mt_nt6' in BoostLogger.obj 
 E:\Projects\native\dcnotificationserver\loggerutil.obj  ::
Run Code Online (Sandbox Code Playgroud)

我知道以前的项目从Windows XP到当前Windows操作系统(即)10.

但是我读到了Windows XP提升支持.

问题是什么?

怎么解决?

我认为由于Windows版本的问题?

有关详细信息,请询问我.

编辑:
我正在使用:
编译器:msvc 10
Boost版本:1.60
Visual Studio 2010

c++ windows boost compiler-errors visual-studio

6
推荐指数
1
解决办法
3158
查看次数

在Windows 7上将升级日志1_60与MinGw链接的问题

在升级到升级1.60.0时,某些应用程序在Windows 7上使用MinGw 4.9.2构建时无法与升级日志链接.

我收到以下链接器错误:

undefined reference to `_imp___ZN5boost3log9v2_mt_nt67trivial6logger3getEv'
undefined reference to `_imp___ZN5boost3log9v2_mt_nt63aux15stream_providerIcE17allocate_compoundERNS1_6recordE'
undefined reference to `_imp___ZN5boost3log9v2_mt_nt63aux25unhandled_exception_countEv'
undefined reference to `_imp___ZN5boost3log9v2_mt_nt611record_view11public_data7destroyEPKS3_'
bad reloc address 0x1 in section `.text$_ZNK5boost4asio5error6detail13misc_category4nameEv[__ZNK5boost4asio5error6detail13misc_category4nameEv]'
Run Code Online (Sandbox Code Playgroud)

注意:BOOST_LOG_DYN_LINK定义为:

g++ -c -pipe -fno-keep-inline-dllexport -Wall -Wextra -Wpedantic -Ofast -std=c++1y -frtti -fexceptions -mthreads -DUNICODE -DLOGGING_ENABLED -DNTDDI_VERSION=NTDDI_WIN7 -D_WIN32_WINNT=_WIN32_WINNT_WIN7 -DBOOST_THREAD_USE_LIB=1 -DBOOST_LOG_DYN_LINK=1
Run Code Online (Sandbox Code Playgroud)

boost 1.60.0构建日志文件显示boost log和boost log_setup都没有任何错误或警告,包括一些无法链接的文件,例如:

gcc.compile.c++ bin.v2\libs\log\build\gcc-mingw-4.9.2\release\threading-multi\trivial.o
gcc.compile.c++ bin.v2\libs\log\build\gcc-mingw-4.9.2\release\threading-multi\unhandled_exception_count.o   
Run Code Online (Sandbox Code Playgroud)

应用程序在Windows 7上使用boost 1.59.0和MinGw 4.9.2链接正常,并在Fedora 23上使用boost 1.60.0和gcc 5.1.1链接OK.

自从提升1.58.0以来,提升asio没有改变.那么在boost 1.59.0和boost 1.60.0之间的boost日志中有什么变化导致MinGw链接在Windows上失败?

windows gcc boost boost-log

4
推荐指数
1
解决办法
1472
查看次数

标签 统计

boost ×2

windows ×2

boost-log ×1

c++ ×1

compiler-errors ×1

gcc ×1

visual-studio ×1