Я пытаюсь получить согласованную среду исполнения VC++ для распространения, но я не могу найти ничего, что заставило boost/bjam сотрудничать.Как скомпилировать boost с использованием определенного VC++ Runtime?
Я успешно скомпилировал libcurl и UnitTest ++ с помощью метода в этой ссылке.
Avoiding problems with VC2005 SP1 Security update KB971090
Общая стратегия должна включать этот заголовок во всех CPP файлов.
#ifndef __midl
#define _SXS_ASSEMBLY_VERSION "8.0.50727.762"
#define _CRT_ASSEMBLY_VERSION _SXS_ASSEMBLY_VERSION
#define _MFC_ASSEMBLY_VERSION _SXS_ASSEMBLY_VERSION
#define _ATL_ASSEMBLY_VERSION _SXS_ASSEMBLY_VERSION
#ifdef __cplusplus
extern "C" {
#endif
__declspec(selectany) int _forceCRTManifest;
__declspec(selectany) int _forceMFCManifest;
__declspec(selectany) int _forceAtlDllManifest;
__declspec(selectany) int _forceCRTManifestRTM;
__declspec(selectany) int _forceMFCManifestRTM;
__declspec(selectany) int _forceAtlDllManifestRTM;
#ifdef __cplusplus
}
#endif
#endi
b2
имеет опции для настройки CXXFLAGS, хотя они, кажется, не чтить свою опцию /FI
компиляции, чтобы использовать заголовок и заставить правильное выполнение. Я предполагаю, что они используют что-то еще. Я полагаю, что boost не использует флагов msvc?
Я хотел бы скомпилировать boost с 8.0.50727.762
конкретно.