Domanda

Sto cercando di compilare boost e MongoDB.

Voglio versioni a 64 bit, librerie condivise e dinamica che collegano al runtime.

Boost è compilato con link=shared, runtime-link=shared, threading=multi (e alcuni altri). I file lib e dll hanno nomi come: Spinta _ * - vc90-mt-1_41.dll

Ora mongodb ha per set di default: / MT (statica multithreading). Il linker richiesto librerie Boost con libboost_*-vc90-mt-s-1_41.dll (notare la lib aggiuntivo e -s). Così ho cambiato la possibilità di /MD (dll multithreading) e il -sdissapeared ma il libstayed. Ho provato con /DBOOST_THREAD_USE_DLL /DBOOST_ALL_DYN_LINK ma non cambia. Ha il linker ancora guardare per le librerie statiche?

Si prega di aiuto:)

È stato utile?

Soluzione

BOOST_ALL_DYN_LINK avrebbe dovuto fare il trucco. Assicurati di ricostruire il vostro progetto da zero, però.

Se il problema persiste ancora, credo che è necessario dire che cosa si nasconde dietro l'asterisco -. Forse c'è un bug con una libreria specifica

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top