我对 Linux 和终端非常缺乏经验,但我正在努力学习。我以前也从未包含过外部库。现在我需要在使用 G++ 在 Ubuntu 中开发的程序中包含 Boost.Asio 库。
有人可以非常友好和非常仔细地解释如何从头开始吗?
编辑:
扩展原始问题:如果我需要将此代码发送给其他人,以便他们在完全独立的机器上但在同一环境中运行它,我该如何考虑?如果整个过程确实涉及将库文件放入与代码相同的文件夹中,我是否只需将这些库文件与 .cpp 一起发送给其他人?
最佳答案
你提到你正在使用 Ubuntu,所以使用 boost 最简单的方法是先安装 libboost-all-dev
包(来自 synaptic),它会为你安装所有东西,包括那些需要的待编译。然后你只需要按照通常的方式使用g++
。
请注意版本是否是你想要的,如果不是,你可能要自己安装。另一方面,boost 主要是仅 header 库,因此您只需要将文件(在 Ubuntu 中右键单击...)提取到一个文件夹并在编译时链接到它:
g++ hello_world.cpp -I boost_1_49_0/boost
最后一个指定编译器查找 boost header 的路径(请使用绝对路径)。
如果你想把你的程序发给别人,不要只复制一些boost文件,因为依赖是不行的。让他们安装与您相同的环境很容易(只需解压缩文件...)。
关于libraries - 如何在 C++ 应用程序中包含 boost 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10081612/