I am trying to link several enhancement libraries (the ones that need to be compiled) in visual studio 2013 and I am having problems with this.
I installed boost files by running a command from the command line
boostrap.bat
and
b2 --toolset=msvc-12.0 --build-type=complete architecture=x86 address-model=64 stage
so that the libraries are in C: \ boost_1_56_0 / stage / lib
In my project, I go to configuration properties> c / C ++> General> Additional include directories and include C: \ boost_1_56_0 and include headers using for example #include<boost/serialization/vector.hpp> among others
Then I go to configuration properties> linker> additional library dependencies and turn on C: \ boost_1_56_0 \ stage \ lib
Now I know that boost uses automatic binding, so I guarantee that there are no attempts to direct links to boost libraries in the configuration properties> linker> input> additional dependencies
However, I still get (many) linker errors of the following type:
error LNK2001: unresolved external symbol "public: void __thiscall boost::archive::detail::basic_oarchive::end_preamble(void)" ( ?end_preamble@basic _oarchive@detail @ archive@boost @@QAEXXZ)
All the relevant questions that I find relate to a misunderstanding of the automatic link setting object, but now Iām directly talking about what I should do (as far as I know). It finds the header files in order, and the library files are where I instruct the linker to look for them.
What can i do wrong?
source share