博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux平台的boost安装方法
阅读量:6824 次
发布时间:2019-06-26

本文共 1365 字,大约阅读时间需要 4 分钟。

hot3.png

Boost库是为C++语言标准库提供扩展的一些C++程序库的总称,由Boost社区组织开发、维护。Boost库可以与C++标准库完美共同工作,并且为其提供扩展功能。今天就介绍一下Linux的安装

一、安装方法

安装boost的时候,其实很简单,按如下步骤安装:

wget http://sourceforge.net/projects/boost/files/boost/1.54.0/boost_1_54_0.tar.gztar -xzvf boost_1_54_0.tar.gzcd boost_1_54_0./bootstrap.sh --prefix=/usr/local./b2 install --with=allboost库被安装在/usr/local/lib下面

二、编译错误

若编译带有boost库的应用程序时,如在终端运行命令:g++ syslogem.cpp -lboost_system

若出现如下错误

undefined reference to `boost::system::generic_category()'undefined reference to `boost::system::generic_category()'undefined reference to `boost::system::system_category()'

只好添加路径

g++ syslogem.cpp -L/usr/local/lib -lboost_system

而在Linux的eclipse平台上的解决办法是添加"/usr/local/lib"路径。

三、运行错误

若再运行阶段出现如下错误

error while loading shared libraries: libboost_system.so.1.54.0: cannot open shared object file: No such file or directory

在可以进行如下解决:

1)添加环境变量:LD_LIBRARY_PATH=/usr/local/lib

在eclipse的添加方式是点击:运行/运行配置/环境/新建。接着添加上述的变量和变量值,如下所示。

注意:

若希望在终端上执行命令,则需要export到~/.bash_profile文件中。当然若是添加到了启动文件后,就不需在eclipse中进行配置了。

2)手动添加链接:ln -s /usr/local/lib/libboost_system.so.1.54.0 /lib64

这个需要在Linux终端进行操作,不管是否使用了eclipse平台。

 

四、eclipse 文件目录管理

由于在C++项目中,存在很多文件,为了便于对这些文件的管理,所以创建了一些文件夹对大量文件进行管理。但这样导致项目中的引用非常复杂,从而可采用在项目中添加自动搜索路径来解决引用复杂的问题。如下所示:

右击项目,选择属性;选择:C/C++构建à设置àGNC C++ 编译器à包含;在上部分中,添加路径;点击工作空间,添加需要搜索的目录。

本文地址:编辑:任维国,审核员:逄增宝

转载于:https://my.oschina.net/u/3308739/blog/1612209

你可能感兴趣的文章
'scope' is defined but never used
查看>>
C++ 常量指针与指针常量
查看>>
VB下对HTML元素的操作
查看>>
四、MyBatis框架介绍及使用
查看>>
java如何追加写入txt文件
查看>>
【PHP框架CodeIgniter学习】使用辅助函数—建立自己的JSONHelper
查看>>
解决kernel headers报错
查看>>
正向代理与反向代理的区别【Nginx读书笔记】(zz)
查看>>
第二周作业WordCount
查看>>
web测试
查看>>
谈谈C#的继承机制(“子承父业”)
查看>>
分类算法总结
查看>>
随笔-20131209
查看>>
javascript内部原理篇[__proto__和prototype]
查看>>
shell脚本中获取本机ip地址的方法
查看>>
php内网探测脚本&简单代理访问
查看>>
解决克隆 centos虚拟机后修改克隆后的机器的ip、mac、uuid失败的问题
查看>>
android margin--负的margin的使用
查看>>
20162329张旭升 实验一:实验报告
查看>>
webpack引入handlebars报错'You must pass a string or Handlebars AST to Handlebars.compile'
查看>>