At the moment, I'm really bugged by linking C++ code in VS2010. The code compiles without error, but there are always linking problems like:
- conflict for _ITERATOR_DEBUG_LEVEL
- some objects are missing
- some objects are defined twice in different libraries
- some libraries are static, some are DLLs
and so on...
Then I add some libraries, ignore some, sometimes create code multithreaded, sometimes multithreaded-DLL... and in most cases I got it somehow working, but there is a lot of try and error.
Now, I'm looking for a tutorial, book, etc. that explains the following things for VS2010 (I guess, there is not much difference to VS2008 or VS2012):
- linking in depth
- how to create libraries and libraries that use other libraries
- how to avoid problems when mixing static and dynamic code
- "strategies" when planning new software projects in terms of using and creating external libraries
Could be in english or german language. Can you help me?
I don't have a book to recommend as I am not fully well-versed with Visual Studio, but I strongly suggest learning and using build automation systems. Start by looking into many open source project's build systems. CMake comes to mind. It that can generate Visual Studio project files and help setting up projects which will link to third party libraries.
Another good hint is to learn what each linker option does. I don't think you'll need a book for this as you can just display the help from the linker program.