18

I am new to boost - can you please tell me what are the difference b/w the following variations of the boost lib and which one do I need to link to in which case?

  • libboost_unit_test_framework-vc80-1_35.lib
  • libboost_unit_test_framework-vc80-gd-1_35.lib
  • libboost_unit_test_framework-vc80-mt-1_35.lib
  • libboost_unit_test_framework-vc80-mt-gd-1_35.lib
  • libboost_unit_test_framework-vc80-mt-s-1_35.lib
  • libboost_unit_test_framework-vc80-mt-sgd-1_35.lib
  • libboost_unit_test_framework-vc80-s-1_35.lib
  • libboost_unit_test_framework-vc80-sgd-1_35.lib

Well, what I actually after is to understand the whole taxonomy of the _gd, mt, sgd things.

Vikash Chauhan
  • 792
  • 2
  • 9
  • 18
Steve
  • 551
  • 2
  • 8
  • 18

3 Answers3

17
[lib][boost_unit_test_framework]-[vc80]-[mt]-[sgd]-[1_35][.lib]
  • lib: On Linux all files are prefixed with this
    • On Windows this prefix is not on "import libraries and DLLs"
  • boost_unit_test_framework: The library name beginning with boost_
  • vc80: Toolset and version used to build this library
  • mt: Indicates multithreading support
  • sgd: Each letter indicates something
    • s: Static linking
    • g: Linked to debug libraries
    • y: "using a special debug build of Python"
    • d: Boost debug
    • p: Uses "the STLPort standard library"
    • n: using STLPort's deprecated "native iostreams" feature
  • 1_35: Boost version
  • .lib: Extension varies based on convention in operating system

Based on this (Thanks @n1ckp)

Also take a look at the list of Boost 1.34.0 binaries available for download for some examples.

anatoly techtonik
  • 19,847
  • 9
  • 124
  • 140
Nate
  • 12,963
  • 4
  • 59
  • 80
11

Here is the link to the docs for full info on what the many suffixes means:

windows: http://www.boost.org/doc/libs/1_40_0/more/getting_started/windows.html#library-naming

linux: http://www.boost.org/doc/libs/1_40_0/more/getting_started/unix-variants.html#library-naming

Although it seems it's the same anyway so either link should be good.

n1ckp
  • 1,481
  • 1
  • 14
  • 21
8

I use Boost on Linux, but here's what I think these are from the Linux naming.

  • mt Multithreaded/thread-safe
  • s Static library
  • gd With debug symbols

On Linux gd seems to be just d, so perhaps maybe the g means something else in additions to "with debug symbols".

AFoglia
  • 7,968
  • 3
  • 35
  • 51