sql >> Base de Datos >  >> NoSQL >> MongoDB

g ++ no puede vincular estáticamente libmongcxx (r3.0.2) pero el vínculo dinámico funciona

El -static flag obliga al enlazador a aceptar solo bibliotecas estáticas y no bibliotecas compartidas. En otras palabras, no requiere una dependencia de bibliotecas dinámicas en tiempo de ejecución para ejecutarse. Lo más probable es que mongocxx tiene algunas dependencias. Para lograr la vinculación estática se requiere que las versiones de archivo (.a) de sus bibliotecas existan en el sistema.

El otro posible problema es que el orden de las bibliotecas estáticas en la línea de comando del enlazador sí importa, por lo que también podría ser un problema si hay una dependencia de diferentes bibliotecas estáticas. El enlazador procesará las bibliotecas en el orden en que están en la línea de comando, y de cada biblioteca estática solo extraerá los símbolos que se requieran (con toda la información que tenga el enlazador en ese momento)

Utilice nm . Eso le dará los nombres de los símbolos.