IDE是VS2012
我是 C++ 的新手,并试图获得一个引用一些 boost 库的开源项目工作。只需遵循一些“入门”分步指南,我的问题是我是否必须运行 bootstrap.bat 和 bjam.exe 来构建 boost?如果我只是将 boost 路径添加到项目包含路径以使 ide 可以找到引用的文件,它会起作用吗?如果是这样,提前建立提升有什么好处?
谢谢。
IDE是VS2012
我是 C++ 的新手,并试图获得一个引用一些 boost 库的开源项目工作。只需遵循一些“入门”分步指南,我的问题是我是否必须运行 bootstrap.bat 和 bjam.exe 来构建 boost?如果我只是将 boost 路径添加到项目包含路径以使 ide 可以找到引用的文件,它会起作用吗?如果是这样,提前建立提升有什么好处?
谢谢。
如果项目使用需要编译的库,仅修改包含路径是不够的。原因是编译器只看到头文件的包含指令;它无法猜测(而且几乎不可能猜测)它需要编译哪些其他 .cpp 文件才能获得所需的一切。
理论上,您可以获取 Boost 源文件并从您的项目中明确引用它们,但这意味着您还需要跟踪它们的依赖关系并获取它们。
Boost 和所有大型项目一样,有一个构建系统,其中已经处理了这些依赖项。理论上,您应该能够引用自己的构建系统项目并说“使用它”。然而,C++ 构建系统的极端多样性意味着这通常是不可能的。您不能从 Visual Studio 引用 Boost.Build 项目,或者从 CMake 引用 SCons 项目,或类似的任何东西。
所以一般来说,你最好的选择是使用它自己提供的构建系统来构建一个项目,然后获取该构建的结果(在 Boost 的情况下,一个充满 .lib 和 .dll 文件的目录)并从你的项目中引用它。
这取决于。一些 boost 库只是头文件,不必编译。其他的则不需要并且必须编译才能使用。