[boost] Supporting boost 1.64 for Visual Studio 2017

164 views
Skip to first unread message

Evgen8 via Boost

unread,
Apr 22, 2017, 1:52:09 PM4/22/17
to bo...@lists.boost.org, Evgen8
The "NuGet" system indicates that BC 2017 is supported.
*boost_locale-vc141. Compiler: Visual Studio 2017. Platforms: Win32, x64.*
But attempts to use this package end with nothing. Regardless of how I
install the "boost_locale" - do I get the same result manually or using
"NuGet"? Attempts to install it on another machine ran out the same. Is this
a bug?

/1>libboost_locale-vc141-mt-1_64.lib(generator.obj) : error LNK2001:
unresolved external symbol "class boost::system::error_category const &
__cdecl boost::system::system_category(void)"
(?system_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(localization_backend.obj) : error
LNK2001: unresolved external symbol "class boost::system::error_category
const & __cdecl boost::system::system_category(void)"
(?system_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(lcid.obj) : error LNK2001: unresolved
external symbol "class boost::system::error_category const & __cdecl
boost::system::system_category(void)"
(?system_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(date_time.obj) : error LNK2001:
unresolved external symbol "class boost::system::error_category const &
__cdecl boost::system::system_category(void)"
(?system_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(generator.obj) : error LNK2001:
unresolved external symbol "class boost::system::error_category const &
__cdecl boost::system::generic_category(void)"
(?generic_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(localization_backend.obj) : error
LNK2001: unresolved external symbol "class boost::system::error_category
const & __cdecl boost::system::generic_category(void)"
(?generic_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(lcid.obj) : error LNK2001: unresolved
external symbol "class boost::system::error_category const & __cdecl
boost::system::generic_category(void)"
(?generic_category@system@boost@@YAABVerror_category@12@XZ)
1>libboost_locale-vc141-mt-1_64.lib(date_time.obj) : error LNK2001:
unresolved external symbol "class boost::system::error_category const &
__cdecl boost::system::generic_category(void)"
(?generic_category@system@boost@@YAABVerror_category@12@XZ)
1>E:\Yandex.Disk\Projects\OS\Release\Devs.exe : fatal error LNK1120: 2
unresolved externals/



--
View this message in context: http://boost.2283326.n4.nabble.com/Supporting-boost-1-64-for-Visual-Studio-2017-tp4693843.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Andrey Semashev via Boost

unread,
Apr 22, 2017, 2:07:55 PM4/22/17
to bo...@lists.boost.org, Andrey Semashev
On 04/22/17 20:29, Evgen8 via Boost wrote:
> The "NuGet" system indicates that BC 2017 is supported.
> *boost_locale-vc141. Compiler: Visual Studio 2017. Platforms: Win32, x64.*
> But attempts to use this package end with nothing. Regardless of how I
> install the "boost_locale" - do I get the same result manually or using
> "NuGet"? Attempts to install it on another machine ran out the same. Is this
> a bug?
>
> /1>libboost_locale-vc141-mt-1_64.lib(generator.obj) : error LNK2001:
> unresolved external symbol "class boost::system::error_category const &
> __cdecl boost::system::system_category(void)"

The missing symbols are from Boost.System. Since you're linking static
libraries, you'll have to specify Boost.Locale dependencies manually to
link with in your project.

Andrey Semashev via Boost

unread,
Apr 22, 2017, 5:54:40 PM4/22/17
to Nadtochiy Evgeniy, bo...@lists.boost.org, Andrey Semashev
On 04/23/17 00:11, Nadtochiy Evgeniy wrote:
> 22.04.2017, 21:07, "Andrey Semashev" <andrey....@gmail.com>:
>>
>> On 04/22/17 20:29, Evgen8 via Boost wrote:
>>
>> The "NuGet" system indicates that BC 2017 is supported.
>> *boost_locale-vc141. Compiler: Visual Studio 2017. Platforms:
>> Win32, x64.*
>> But attempts to use this package end with nothing. Regardless of
>> how I
>> install the "boost_locale" - do I get the same result manually or
>> using
>> "NuGet"? Attempts to install it on another machine ran out the
>> same. Is this
>> a bug?
>>
>> /1>libboost_locale-vc141-mt-1_64.lib(generator.obj) : error LNK2001:
>> unresolved external symbol "class boost::system::error_category
>> const &
>> __cdecl boost::system::system_category(void)"
>>
>>
>> The missing symbols are from Boost.System. Since you're linking static
>> libraries, you'll have to specify Boost.Locale dependencies manually to
>> link with in your project.
>>
> How can i do this? There was always enough installation with NuGet...

I don't know what NuGet is or how it works, but the libraries to link
with are typically specified in VS project settings (look for the linker
parameters tab).

PS: Also, please, don't top post.

Marc Glisse via Boost

unread,
Apr 23, 2017, 4:10:26 AM4/23/17
to Evgen8 via Boost, Marc Glisse
When you get exactly those 2 missing symbols from boost system and only
those, this is usually caused by the deprecated code in boost system.
Please lobby the boost system maintainer so BOOST_SYSTEM_NO_DEPRECATED
becomes the default (or BOOST_ERROR_CODE_HEADER_ONLY, or anything that
avoids forcing people to link with it just for an unused, deprecated
definition).

--
Marc Glisse
Reply all
Reply to author
Forward
0 new messages