Utilizo GoogleTest para probar mis proyectos C++, y después de encontrar que las bibliotecas precompiladas ya no se distribuían en el paquete Ubuntu, encontré lo siguiente en el sitio web del proyecto:Es seguro vincular a una biblioteca estática construida con diferentes indicadores de compilación
Si compila prueba Google y su código de prueba usando diferentes compilador banderas, pueden ver diferentes definiciones de la misma clase /función/variable (por ejemplo, debido a la utilización de #if en Google Test). Por lo tanto, para su cordura, recomendamos evitar la instalación de las bibliotecas de Google Test compiladas . En su lugar, cada proyecto debe compilar Google Test de manera que pueda estar seguro de que se usan los mismos distintivos tanto para Google Test como para las pruebas.
Lo que quiero sacar de esto es que es una mala idea compilar GoogleTest por separado del proyecto que se está probando. Lo que no entiendo es si esto es solo una cuestión de GoogleTest, o si esto es algo general para vincular bibliotecas.
Pregunta
¿Hay alguna situación en la que no es seguro para vincular a precompilado bibliotecas de terceros, opciones del compilador o de otra manera, y si no, ¿qué tiene de especial GoogleTest?
Su cita parece carecer de la parte importante: 'Si compila Google Test y su código de prueba utilizando diferentes indicadores de compilación, pueden ver diferentes definiciones de la misma clase/función/variable (por ejemplo, debido al uso de #if en Google Test).' –
He actualizado la cita con el bit que señalas. –