Al crear una biblioteca de clases en C ++, puede elegir entre bibliotecas dinámicas ( .dll, .so) y estáticas ( .lib, .a). ¿Cuál es la diferencia entre ellos y cuándo es apropiado usar
Al crear una biblioteca de clases en C ++, puede elegir entre bibliotecas dinámicas ( .dll, .so) y estáticas ( .lib, .a). ¿Cuál es la diferencia entre ellos y cuándo es apropiado usar
¿Existen razones de rendimiento convincentes para elegir el enlace estático en lugar del enlace dinámico o viceversa en ciertas situaciones? He escuchado o leído lo siguiente, pero no sé lo suficiente sobre el tema para dar fe de su veracidad. 1) La diferencia en el rendimiento del tiempo de...
A menudo escucho los términos 'enlazados estáticamente' y 'enlazados dinámicamente', a menudo en referencia al código escrito en C , C ++ o C # . ¿Qué son, de qué están hablando exactamente y qué están
Estoy tratando de crear un objeto estático escrito en Ir a la interfaz con un programa en C (por ejemplo, un módulo del núcleo o algo así). He encontrado documentación sobre cómo llamar a las funciones de C desde Go, pero no he encontrado mucho sobre cómo ir al otro lado. Lo que he encontrado es...
Me resulta extraño usarlo -Wl,-Bstaticpara saber con gccqué bibliotecas quiero vincular estáticamente. Después de todo, estoy contando gccdirectamente toda otra información sobre el enlace con bibliotecas ( -Ldir, -llibname). ¿Es posible decirle al controlador gcc directamente qué bibliotecas...
Siempre me lo he preguntado. Sé que los compiladores convierten el código que escribes en binarios, pero ¿qué hacen los enlazadores? Siempre han sido un misterio para mí. Más o menos entiendo lo que es "vincular". Es cuando se agregan referencias a bibliotecas y marcos al binario. No entiendo nada...
Estoy tratando de entender qué sucede cuando los módulos con variables globales y estáticas se vinculan dinámicamente a una aplicación. Por módulos, me refiero a cada proyecto en una solución (¡trabajo mucho con Visual Studio!). Estos módulos están integrados en * .lib o * .dll o en el * .exe...