Tengo un ejecutable de C++ y estoy vinculando dinámicamente contra varias bibliotecas (Boost, Xerces-c y libs personalizadas).¿Por qué el enlazador de C++ requiere los archivos de la biblioteca durante una compilación, aunque estoy vinculando dinámicamente?
Entiendo por qué necesitaría los archivos .lib/.a si elijo vincular estáticamente con estas bibliotecas (relevant SO question here). Sin embargo, ¿por qué debo proporcionar los archivos correspondientes de la biblioteca .lib/.so al vincular mi ejecutable si estoy de forma dinámica enlazando con estas bibliotecas externas?
El vinculador necesita saber * qué * DLL contiene una exportación que necesita resolver. El archivo .lib proporciona esta información. –