Опитвам се да създам C/C++ статична библиотека с помощта на Visual Studio 2005. Тъй като изборът на библиотеката за изпълнение е опция за компилиране, аз съм принуден да създам четири варианта на моята библиотека, по един за всеки вариант на библиотеката за изпълнение:
- /MT - статична библиотека за изпълнение
- /MD - библиотека за изпълнение на DLL
- /MTd - отстраняване на грешки в статична библиотека по време на изпълнение
- /MDd - отстраняване на грешки DLL библиотека за изпълнение
Това са опции на компилатора, а не опции за свързване. Идвайки от фона на Linux, това изглежда странно. Различните библиотеки по време на изпълнение имат ли различни конвенции за извикване или нещо подобно? Защо различните библиотеки по време на изпълнение не могат да бъдат разрешени по време на свързване, т.е. когато свързвам приложението, което използва моята статична библиотека?