我下载了boost 1.55.0。来自boost website,
我的Visual Studio版本是11.0.50727.1。
bootstrap.bat
b2.exe 编译完成后,控制台写道,一切顺利,我可以在\ stage \ lib中找到库
结果列表:
LIBRARY libboost_python-vc110-mt-1_55
EXPORTS
"__CT??_R0?AU?$error_info_injector@Vbad_function_call@boost@@@exception_detail@boost@@@8??0?$error_info_injector@Vbad_function_call@boost@@@exception_detail@boost@@QAE@ABU012@@Z32"
"__CT??_R0?AUerror_already_set@python@boost@@@8??0error_already_set@python@boost@@QAE@ABU012@@Z4"
"__CT??_R0?AV?$clone_impl@U?$error_info_injector@Vbad_function_call@boost@@@exception_detail@boost@@@exception_detail@boost@@@8??0?$clone_impl@U?$error_info_injector@Vbad_function_call@boost@@@exception_detail@boost@@@exception_detail@boost@@QAE@ABV012@@Z44"
"__CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QAE@ABV01@@Z12"
"__CT??_R0?AVbad_cast@std@@@8??0bad_cast@std@@QAE@ABV01@@Z12"
"__CT??_R0?AVbad_function_call@boost@@@8??0bad_function_call@boost@@QAE@ABV01@@Z12"
"__CT??_R0?AVbad_numeric_cast@numeric@boost@@@8??0bad_numeric_cast@numeric@boost@@QAE@ABV012@@Z12"
"__CT??_R0?AVclone_base@exception_detail@boost@@@8??0clone_base@exception_detail@boost@@QAE@ABV012@@Z40324"
"__CT??_R0?AVexception@boost@@@8??0exception@boost@@QAE@ABV01@@Z2012"
"__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12"
"__CT??_R0?AVinvalid_argument@std@@@8??0invalid_argument@std@@QAE@ABV01@@Z12"
"__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z12"
"__CT??_R0?AVnegative_overflow@numeric@boost@@@8??0negative_overflow@numeric@boost@@QAE@ABV012@@Z12"
"__CT??_R0?AVpositive_overflow@numeric@boost@@@8??0positive_overflow@numeric@boost@@QAE@ABV012@@Z12"
"__CT??_R0?AVrange_error@std@@@8??0range_error@std@@QAE@ABV01@@Z12"
"__CT??_R0?AVruntime_error@std@@@8??0runtime_error@std@@QAE@ABV01@@Z12"
"__CTA1?AUerror_already_set@python@boost@@"
"__CTA2?AVbad_alloc@std@@"
"__CTA3?AVinvalid_argument@std@@"
"__CTA3?AVrange_error@std@@"
"__CTA4?AVnegative_overflow@numeric@boost@@"
"__CTA4?AVpositive_overflow@numeric@boost@@"
"__CTA7?AV?$clone_impl@U?$error_info_injector@Vbad_function_call@boost@@@exception_detail@boost@@@exception_detail@boost@@"
"__TI1?AUerror_already_set@python@boost@@"
"__TI2?AVbad_alloc@std@@"
"__TI3?AVinvalid_argument@std@@"
"__TI3?AVrange_error@std@@"
"__TI4?AVnegative_overflow@numeric@boost@@"
"__TI4?AVpositive_overflow@numeric@boost@@"
"__TI7?AV?$clone_impl@U?$error_info_injector@Vbad_function_call@boost@@@exception_detail@boost@@@exception_detail@boost@@"
"encode_string_unaryfunc"
"identity_unaryfunc"
"no_init"
"wmemcpy"
"wmemmove"
"wmemset"
我需要这个库中的所有boost :: python函数,我该如何解决?
我不知道为什么,也许这是问题,但VS2012正试图加载" boost_python-vc110-mt-gd-1_55.lib" (如果我没有这样的文件,我有链接器错误)。如何命令它不链接动态而不是静态?如何命令我的项目使用静态库? 我的项目中没有任何关于应该采用哪个库的设置,即提升自动链接功能......
我找到了解决方案 - 如果我动态构建boost_python库,一切运行良好。我的编译器(来自VS2012)希望所有的boost库都是静态的,但是boost_python - 只是动态的。所以当我给他静态版本的python时 - 它拒绝了它。我不知道为什么以及如何管理它,但这是第二个问题的主体already asked。