Sto provando a creare un'applicazione che dipende da Boost. Così ho scaricato Boost 1_41_0 nel mio box Linux e ho seguito le istruzioni trovate sul sito Boost per le varianti Unix, http://www.boost.org/doc/libs/1_41_0/more/getting_started/unix-variants.html.Edificio Boost su Linux - nomi libreria
Fondamentalmente suggeriscono di eseguire ./bjam install, cosa che ho fatto. La compilazione è stata completata con successo. Tuttavia, i nomi delle librerie non sembrano corrispondere alla convenzione di denominazione Boost descritta sia nella documentazione di cui sopra, sia in ciò che è specificato nel makefile dell'applicazione che sto cercando di creare.
Ho notato che ci sono un sacco di opzioni che posso specificare su bjam e ho provato a giocare con quelle, ma non importa quello che succede, non riesco a farlo correttamente. La mia comprensione è che le librerie dovrebbero andare nella directory $ BOOST_ROOT/lib. Questo è dove le librerie appaiono, ma prende il nome:
libboost_thread.a
libboost_thread.so
libboost_thread.so.1.41.0
mi aspetto che per essere nominato libboost_thread-gcc41-mt-d-1_41_0 o qualcosa di simile.
ho provato ./bjam --build-type = completa --layout = etichettato e vedo:
libboost_thread.a
libboost_thread-mt.a
libboost_thread-mt-d.a
libboost_thread-mt-d.so
libboost_thread-mt-d.so.1.41.0
libboost_thread-mt-s.a
libboost_thread-mt-sd.a
libboost_thread-mt.so
libboost_thread-mt.so.1.41.0
libboost_thread.so
libboost_thread.so.1.41.0
Quindi, io non sono sicuro se devo solo fare scena mia directory -L? C'è qualche documentazione che descrive questo in modo più dettagliato?
Come si costruisce un Boost con supporto multithreading? Boost's [Installazione] (http://www.boost.org/doc/libs/1_54_0/doc/html/bbv2/installation.html) non ne parla. – jww
Al momento del potenziamento dell'edificio, utilizzare: ./b2 --build-type = complete --layout = versione Questo genererà ciascuna versione di ciascuna libreria, compresi quelli con multithreading. – Riot
Grazie Riot. Da [altre discussioni] (http://stackoverflow.com/questions/2293962/boost-libraries-in-multithreading-aware-mode) su Stack Overflow, sembra che Boost sia multi-thread per impostazione predefinita. Quindi se eseguo './B2', ottengo multi-thread senza decorazioni. Non è questo il caso? – jww