Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/testing/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Boost 在Visual C++;快车2010_Boost_Visual C++ 2010 Express - Fatal编程技术网

Boost 在Visual C++;快车2010

Boost 在Visual C++;快车2010,boost,visual-c++-2010-express,Boost,Visual C++ 2010 Express,我已经安装并构建了(据我所知)boost 1_47_0。我现在正试图让示例程序(regex one)及其安装指南运行,它给了我以下链接错误: LNK2019:未解析的外部符号“private:class boost::basic_regex…” 我怀疑问题是,使用B2构建了VC100库,平台工具集是Windows 7.1SDK。我不能将平台工具集更改为V100,或者它会生成Kalnel32.LIB缺失错误。我无法确定如何构建Boost,使之成为SDK7。我使用VisualC++快件2010,也尝

我已经安装并构建了(据我所知)boost 1_47_0。我现在正试图让示例程序(regex one)及其安装指南运行,它给了我以下链接错误:

LNK2019:未解析的外部符号“private:class boost::basic_regex…”

我怀疑问题是,使用B2构建了VC100库,平台工具集是Windows 7.1SDK。我不能将平台工具集更改为V100,或者它会生成Kalnel32.LIB缺失错误。我无法确定如何构建Boost,使之成为SDK7。我使用VisualC++快件2010,也尝试构建。从Windows7.1SDK命令行提示符下进行初始化


有什么想法吗?

我使用一个调用bjam的批处理文件构建boost,在我的项目中使用regex库没有任何问题。我使用的是VS2010 Pro。以下是我的批处理文件中的行,额外的库位置可能对您不重要,我只是为了完整起见将它们放在这里:

call "C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"
SET ZLIB_SOURCE=%LIBS%\zlib
SET ZLIB_INCLUDE=%LIBS%\zlib
SET BZIP2_SOURCE=%LIBS%\bzip2-1.0.5
SET BZIP2_INCLUDE=%LIBS%\bzip2-1.0.5
SET BZIP2_BINARY=libbz2
SET ZLIB_BINARY=zdll
SET EXPAT_INCLUDE=%LIBS%\Expat\Source\lib
SET EXPAT_LIBPATH=%LIBS%\Expat\Bin
SET EXPAT_BIN=%LIBS%\Expat\Bin

bjam.exe  --disable-filesystem2 --build-type=complete --user-config=%UTILS%\user-config.jam 
当然,库和user-config.jam的路径不同,user-config.jam中唯一一行真正重要的内容是:

using msvc : 10.0 ;

成功构建后,您需要将stage/lib目录的路径添加到项目的其他库设置中,以便链接器满意。此外,由于这是一个快速构建,您可能需要修改include路径以获取平台SDK。我从顶级Boost目录运行此批处理文件。

我遇到了当我使用“BoostPro Computing”中的安装程序安装boost时,我也遇到了同样的问题。我通过从源代码编译boost库来解决这个问题。 以下是步骤:

  • 进入Visual Studio 2010 Express命令提示符
  • cd到解压缩的boost目录
  • bootstrap.bat
  • .\b2
  • 完成了

    这是我的环境:

    • Win7 64位
    • VisualStudio2010Express
    • 增压1_52_0

    这不起作用。它仍在构建vc100库。我猜这是express vs.pro的问题。当你说vc100库时,你的确切意思是什么?你希望构建什么库?你的目标是什么?我希望库与x64兼容。我可以手动将解决方案中的设置更改为SDK7.1,并且以64位方式工作,但我无法将标记为vc100的链接到中。如果我理解正确,您的目标是64位项目?那么您需要将boost LIB构建为64位,或者按照cubbi的建议,使用boostpro安装程序。如果您真的想编译自己,我会看看这一页:为什么要构建自己,boost是不是专业安装程序失败?