I’m working on a C++ project that produces a lib that other teams use. It’s being produced in a few different flavours:
- Win32 Debug Dynamic
- Win32 Debug Static
- Win32 Release Dynamic
- Win32 Release Static
- x64 Debug Dynamic
- x64 Debug Static
- x64 Release Dynamic
- x64 Release Static
I’m wondering what the best wisdom is on how to name the dlls and what arguments are for different naming conventions. Do I output the libs into different directories, or do I append some letters on the end of the lib to differentiate them, or something else? One concern is that if I use directories, but don’t give all the libs different names, users of the library will have problems where they accidentally use the wrong lib. Are these concerns valid?
Thanks very much.
I output all the different flavours into the same directory, using a naming convention to disambiguate. By having them in the same directory, the linker directories don’t have to change between flavour. The libraries then get linked using a set preprocessor directives that select the
#pragma (lib,...)directive for the flavour being compiled.