【发布时间】:2010-09-22 08:09:04
【问题描述】:
我找不到用于 Boost 1.37.0 的一组预构建的 MSVC++ 库,只有源代码。我不明白他们奇怪的构建系统是如何工作的……有没有什么地方可以找到 Visual Studio 项目的下载或其他东西?
【问题讨论】:
我找不到用于 Boost 1.37.0 的一组预构建的 MSVC++ 库,只有源代码。我不明白他们奇怪的构建系统是如何工作的……有没有什么地方可以找到 Visual Studio 项目的下载或其他东西?
【问题讨论】:
BoostPro Computing 人员维护 Windows 的 Boost 安装程序,但他们通常需要几周时间才能将新版本上线。 1.37 还没到。
虽然努力支持building Boost with CMake,但没有 Visual Studio 解决方案(请记住,Boost 面向 许多 平台)。我不确定他们在 1.37 中走了多远,但我相信这个过程还处于早期阶段。
然而,标准构建系统并不那么很奇怪!从您的平台的downloading bjam 开始(查找Windows 的“ntx86”后缀)并将其安装在路径中的某个位置(C:/Windows/System32)。然后下载source,解压缩并从命令行运行构建系统。对于 Visual Studio 用户,它看起来像这样:
bjam --build-dir="C:\boostsource" --toolset=msvc --build-type=complete stage
这几乎是从Getting Started Guide 中提取的,它更详细。如果当前目录是源的根目录,则不需要 build-dir。
在等待几个小时以构建所有内容后(“完成”意味着它将构建调试、发布、单/多线程、静态/动态、静态/动态链接到运行时 - 以及 组合) 你最终会得到一个 'stage/lib' 目录中的所有库。
最后,您需要告诉 Visual Studio 在哪里可以找到头文件和库。转到工具-> 选项-> 项目和解决方案-> VC++ 目录。为“包含文件”添加一个条目(如“C:\boostsource”)。为“库文件”添加一个条目(“C:\boostsource\stage\lib”)。
【讨论】:
我的网站上有一个 1.37 (VC 7.1, 8, 9) 的构建版本,请自助。
(更新... 1.38 也在那里)
(另一个更新,现在有 1.39)
(1.40 到了)
(1.41到了,有点晚了)
【讨论】:
看起来很复杂,但是构建 Boost 确实没那么糟糕。首先你需要下载 bjam 工具(SourceForge 是一个很好的来源)。确保 bjam.exe 位于 PATH 中的目录中。
转到解压后 Boost 下载的根目录(例如 C:\Boost_1_37_0)
键入 bjam --help 以获取所有构建选项的列表。
我使用以下命令构建所有内容,您可以自定义它以满足您的需求:
bjam --prefix=C:\boost --build-dir=C:\build --build-type=complete install
结果会放在C:\boost,你可以删除C:\build。
【讨论】:
构建它并不困难。 他们在这里对默认过程进行了相当好的扩展: http://www.boost.org/doc/libs/1_37_0/more/getting_started/windows.html#or-build-binaries-from-source
下载 bjam(来自 sourceforge,有来自 boost 网站的链接)以及 boost 源,确保 bjam 可以从 boost 目录访问,cd 到 boost 目录,然后运行如下内容:
bjam --build-dir= --prefix-dir= --toolset=msvc --build-type=完成安装
where 是一个临时目录,它可以存储中间文件,并且是最终安装位置。您可以尝试各种其他选项,但并非所有选项都记录得很好,但基础相当简单。
如需更多帮助,您可以从 boost 源目录运行 bjam --help。
【讨论】: