Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Missing boost library

Tags:

c++

boost

My VSC2013 compiler wants me to link to libboost_system-vc120-mt-s-1_55.lib but that file doesn't exist in boost\stage\lib. I only have lib files ending in vc120-mt-1_55.lib and vc120-mt-gd-1_55.lib

I built boost with

bootstrap
b2

What do I need to do to get the lib above?

Edit: this worked

b2 variant=debug,release link=static runtime-link=static

like image 624
A.B. Avatar asked Nov 19 '13 16:11

A.B.


People also ask

Where is Boost library?

For me, the library path for boost was in /usr/lib64 , and that's all I had to add to my library path for the code to build properly. On a different machine, I found it installed under /usr/lib .

How do I add a Boost library?

In the properties dialog, select "Configuration Properties" and then "VC++ Directories". You will need to add the Boost include path to the "Include Directories" list. If you're using all header-only libraries then you're done. Otherwise, you will need to add the Boost library path to "Library Directories".

Where are Boost libraries installed Windows?

The installers supplied by BoostPro Computing will download and install pre-compiled binaries into the lib\ subdirectory of the boost root, typically C:\Program Files\boost\boost_1_49_0\lib\. If you installed all variants of the Boost.

How do I update my Boost library?

Download the latest version (1.43. 0) of the Boost libraries from the Boost website and follow the steps in the getting started guide, which explains how to build Boost on a number of platforms, including Linux.


1 Answers

You should build static version of boost libraries. See this question How to build boost static libs?

NOTE: Libraries naming convention:

  • mt : Multi threading
  • s: Static
  • gd: ABI with debug version,

See this question to know what's the difference between mt-gd and mt-s library

like image 69
Yousf Avatar answered Oct 09 '22 12:10

Yousf