Mac上安装boost开放环境
方法一:
- 去Macports官网的下载页面(https://distfiles.macports.org/MacPorts/)下载对用Mac系统的pkg文件,下载完成之后,双击,一路【下一步】,到安装按成。
- 打开一个新终端:输入sudo port install boost,提示输入密码,输入你当前使用的账号的密码(注意终端中输密码不会有任何显示提示,即输入的密码不会显示),回车,Macports会全自动下载,安装并编译需要单独编译的部分boost库。时间有点长,你可以放这去干点别的了。
- 打开Xcode,新建一个工程,【OS X】-》【Application】-》【Command Line Tool】,创建此类工程。
- 将此预编译指令加入main文件中测试#include <boost/asio.hpp>,会发现头文件找不到。这是因为新建的工程没有配置为使用boost库。此时我们需要点击【项目工程文件】-》【Targets】-》【BuildSetting】-》【Search Paths】-》【Header Search Paths】,输入/opt/local/include,这样头文件能找到,再添加库文件搜索路径,再【Search Paths】-》【Library Search Paths】,输入/opt/local/lib。
- 上面添加了头文件和库文件搜索目录后,点击运行,仍然无法通过编译,我这边是弹出错误,undefined reference to `boost::system::system_category(),这可能是连接不到对应的库,点击【项目工程文件】-》【Targets】-》【Build Phases】-》【Link Binary with Libraries】,点击下侧的+号,添加libboost_system.a,点击Add Another...,到/opt/local/lib中选择libboost_system-mt.a,在次点击下侧的+号,添加libboost_filesystem.a,点击Add Another...,到/opt/local/lib中选择libboost_filesystem-mt.a,这样就添加两个库文件。
- 我这里通过这几步终于可以使用boost库,boost官方网站上的asio的Tutorial例子就可以照着编程了。