J'essaie de construire boost.lib avec bjam, mais peu importe ce que je fais, je n'arrive pas à reconnaître mon drapeau BOOST_LOG_NO_COMPILER_TLS
. Je construis comme ceci:Pourquoi bjam semble-t-il ignorer mes arguments?
bjam address-model=32 --toolset=msvc-10.0 --build-type=complete
--with-log variant=debug link=static runtime-link=static
define=BOOST_LOG_NO_COMPILER_TLS stage
Pour vérifier qu'il est en ignorant le drapeau, je compilé avec et sans ce drapeau et utilisé Beyond Compare pour comparer chaque fichier généré dans le dossier de la scène.
Tous les fichiers lib étaient identiques. Je m'attendrais à des différences si bjam reconnaissait mes champs define
.
Je suis nouveau pour booster et bjam, alors je fais quelque chose de mal?
Votre syntaxe est correcte, à l'exception des outils - elle devrait être 'toolset = msvc-10.0' sans' --'. Vous pouvez essayer 'cxxflags =" - DBOOST_LOG_NO_COMPILER_TLS "' au lieu d'utiliser 'define', mais vous utilisez correctement' define', donc je doute que cela puisse vous aider. Avez-vous vérifié les sources de '#undef BOOST_LOG_NO_COMPILER_TLS'? – ildjarn
Etes-vous sûr que la version de Boost.Log que vous utilisez utilise la macro 'BOOST_LOG_NO_COMPILER_TLS'? Peut-être que c'est juste pour les versions plus anciennes; vous devriez grep les sources pour s'assurer qu'il est toujours applicable. Par exemple, votre thread précédent a indiqué que Boost.Log ne fonctionne qu'avec Boost.FileSystem v2, mais ce n'est certainement plus le cas, donc plus que cela peut avoir changé. – ildjarn