Come per vedere cosa g ++ righe di comando invoca Boost.Build (1.33.1)
-
21-09-2019 - |
Domanda
sto grattarsi la testa, cercando di capire il motivo per cui le librerie di importazione non vengono generati quando costruire le librerie Boost sulla mia macchina. Più in particolare, la costruzione delle DLL funziona bene, ma dove avrei precedenza (vale a dire prima che ho reinstallato la mia macchina) generare le librerie di importazione correttamente.
Alcune specifiche:
- Boost 1.33.1
- g ++ 4.3.3 TDM-1 di rilascio per Windows
- Edificio con
gcc
set di strumenti da prompt di MS DOS della riga di comando - UnxUtils (dopo 14-04-03)
La riga di comando che richiama bjam.exe assomiglia a questo:
"C:\.../boost_1_33_1/tools/build/jam_src/bin.ntx86/bjam.exe" --debug-configuration -d2 -q --builddir=C:/.../trunk/XTemp/gcc.debug/boost_1_33_1 toolset=gcc threading=multi define=BOOST_WINDOWS define=_GLIBCXX__PTHREADS linkflags=-shared-libgcc runtime-link=shared variant=debug --v2 linkflags=-out-implib=boost_thread.lib
Ciò usata per funzionare meravigliosamente prima e prodotto il boost_thread.lib
file desiderato, ma non più. Io davvero non so cosa sta succedendo e Mi piacerebbe sapere esattamente ciò che il linker riceve sulla riga di comando e che cosa pensa che dovrebbe fare con esso .
Grazie,
Carl
Soluzione
Il -d2
dovrebbe darvi esattamente quello che stai cercando. Sono sorpreso che non ha funzionato. Forse è nascosto in altri messaggi. Prova omettendo il --debug-configuration
e la sua sostituzione con -d2
-d+2
. Quest'ultimo stamperà il bjam comandi invoca oltre a bjam messaggi non di debug.