Centos编译boost

 
1.下载最新的boost
http://www.boost.org/
 
2.解压文件
tar -xzvf boost_1_45_0.tar.gz 
 
3.编译bjam
进入boost_1_45_0目录中,运行./bootstrap.sh,完成后会得到一个bjam
 
4.编译boost 
./bjam --with-date_time --with-system --with-regex --with-thread --with-filesystem --with-serialization --with-iostreams --with-math --with-mpi --with-program_options --with-python --with-math --with-signals --layout=tagged install variant=debug,release link=static --runtime-link=static threading=multi stage  
//这个是编译出mt的多线程 
5.查看boost
编译完成后,在/usr/local/include/boost就有最新的boost头文件了,在/usr/local/lib就有编译好的.a库文件了。
虽然usr/local/include和/usr/include都有目录,但GCC是先访问/usr/local/include,所以编译完成后,就可以默认使用boost了。
 
6.测试boost
vi testboost.cpp
 
#include <iostream>
#include <boost/version.hpp>
 
int main()
{
    std::cout<<BOOST_VERSION<<std::endl;
    return 0;
}
 
 
编译:g++ -o testboost testboost.cpp

/*linux - centos下boost库的安装

  1. yum install boost
  2. yum install boost-devel
  3. yum install boost-doc

*/

libmemcached安装及简单例子

1、下载安装libmemcached

$ wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz

 $ tar xvzf libmemcached-0.44tar.gz 
 $ cd libmemcached-0.44
 $ ./configure
 $ make
 $ sudo make install
 libmemcached 默认安装在/usr/local/,头文件安装在/usr/local/include/libmemcachde/,动态库默认安装在/usr/local/lib/下。
2、libmemcached简单测试使用

 1 #include <iostream>
 2 #include <string>
 3 #include <libmemcached/memcached.h>
 4 
 5 using namespace std;
 6 
 7 int main(int argc,char *argv[])
 8 {
 9     //connect server
10     memcached_st *memc;
11     memcached_return rc;
12     memcached_server_st *server;
13     time_t expiration;
14     uint32_t  flags;
15 
16     memc = memcached_create(NULL);
17     server = memcached_server_list_append(NULL,"localhost",11211,&rc);
18     rc=memcached_server_push(memc,server);
19     memcached_server_list_free(server);
20 
21     string key = "key";
22     string value = "value";
23     size_t value_length = value.length();
24     size_t key_length = key.length();
25 
26 
27     //Save data
28     rc=memcached_set(memc,key.c_str(),key.length(),value.c_str(),value.length(),expiration,flags);
29     if(rc==MEMCACHED_SUCCESS)
30     {
31         cout<<"Save data:"<<value<<" sucessful!"<<endl;
32     }
33 
34     //Get data
35     char* result = memcached_get(memc,key.c_str(),key_length,&value_length,&flags,&rc);
36     if(rc == MEMCACHED_SUCCESS)
37     {
38         cout<<"Get value:"<<result<<" sucessful!"<<endl;
39     }
40 
41     //Delete data
42     rc=memcached_delete(memc,key.c_str(),key_length,expiration);
43     if(rc==MEMCACHED_SUCCESS)
44     {
45         cout<<"Delete key:"<<key<<" sucessful!"<<endl;
46     }
47 
48     //free
49     memcached_free(memc);
50     return 0;
51 }
52 
53 

编译:g++ -o testmemcached testmemcached.cpp -lmemcached
运行:./testmemcached
结果:Save data:value sucessful!
      Get value:value sucessful!
      Delete key:key sucessful!

QT的安装

是解压缩剪切过去的。

下面是全局环境配置:

export PATH=/usr/lib:/usr/local/lib:$PATH
export LD_LIBRARY_PATH=/usr/lib64/plugins:/usr/lib64/plugins/sqldrivers:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=/usr/lib64/plugins
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH

export PATH=/usr/lib:/usr/local/lib:$PATH
export LD_LIBRARY_PATH=/usr/lib64/plugins:/usr/lib64/plugins/sqldrivers:/usr/lib64/sqldrivers:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=/usr/lib64/plugins
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH

protobuf的安装

protobuf-2.5.0.tar.gz上传到百度云盘供大家下载,地址: http://pan.baidu.com/s/1pJlZubT

1、protobuf是google公司提出的数据存储格式,详细介绍可以参考:https://code.google.com/p/protobuf/

2、下载最新的protobuf,下载地址:https://code.google.com/p/protobuf/downloads/list

3、下载protobuf2.5.o版本,protobuf-2.5.0.tar.gz解压并进行安装。

解压:tar xvf protobuf-2.5.0.tar.gz

安装步骤:(1)./configure (2)make (3)make check (4)make install

注意:安装成功后,将它的bin和lib目录分别加入到PATH和LD_LIBRARY_PATH环境变量,以方便直接调用。

通常建议安装到/usr/local目录下,执行configure时,指定--prefix=/usr/local/protobuf即可    

设置环境变量过程:编辑/etc/profile,在文件末尾添加:

export PATH=$PATH:/usr/local/protobuf/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib

最后输入  protoc --version命令,如显示libprotoc 2.5.0则安装成功

CentOS 安装gcc g++ gtk opengl

 

yum -y install gcc
yum -y install gcc-c++

yum install make

-- 或者

yum groupinstall "Development Tools"

-- 或者

yum install gcc gcc-c++ kernel-devel

   

gtk2.0
解决No package ‘gtk+-2.0′ found
方法:yum install libgnomeui-devel

openGL

1.首先安装Mesa  
root执行: 
yum list mesa*        // 它会列出所有可用的mesa包 
yum install mesa*   //安装所有可用的mesa包 
2.安装freeglut 
root执行: 
yum install freeglut* 
 
 
 

可能你在运行时会出现这样的错误:error while loading shared libraries: libboost_thread.so.1.49.0: cannot open shared object file: No such file or directory

这是因为要用到的库不在默认的环境变量里,可以使用下面的命令添加:
$ sudo ldconfig /usr/local/lib

centos下各种c++库文件的安装的更多相关文章

  1. CentOS下Docker与.netcore(一) 之 安装

    CentOS下Docker与.netcore(一) 之 安装 CentOS下Docker与.netcore(二) 之 Dockerfile CentOS下Docker与.netcore(三)之 三剑客 ...

  2. CentOS下MySQL 5.7.9编译安装

    MySQL 5.7 GA版本的发布,也就是说从现在开始5.7已经可以在生产环境中使用,有任何问题官方都将立刻修复. MySQL 5.7主要特性: 更好的性能:对于多核CPU.固态硬盘.锁有着更好的优化 ...

  3. centos下redis和nginx软件的安装

    我们这章以redis和nginx软件为例,介绍一下centos下软件的安装. 需要软件包(可以先下载好复制到centos指定目录下,也可直接用wget命令获取): nginx-1.7.9.tar re ...

  4. Samba在CentOS下的图形化界面的安装

    第一步:构建yum仓库(在此用的是北交大的yum仓库) 打开目录/etc/yum.repos.d下的CentOS-Base.repo文件,此处是我自己建的yum仓库,修改里面的链接地址为北交大的镜像的 ...

  5. Centos下删除文件名乱码文件

    centos下通过rm命令来删除文件,但是如果要删除文件名乱码的文件,就不能直接使用rm命令了,因为压根就无法输出文件名来.不过借助find命令可以实现对其删除.在linux下对于每个文件都一个对应的 ...

  6. CentOS下如何查找大文件

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...

  7. 最具体的历史centos下一个 postfix + extmail + dovecot + maildrop 安装注意事项2014更新

    这篇文章原本是2008年发表的,近期几天照此笔记又安装了一遍系统.这里更新一下记录. 作者:wangdy 本文发表于  http://blog.csdn.net/aryang/article/deta ...

  8. Centos下Sphinx的下载与编译安装

    官方下载地址   http://sphinxsearch.com/downloads/release/ 百度云下载地址  https://pan.baidu.com/s/1gfmPbd5 wget  ...

  9. centos下搭建Jenkins持续集成环境(安装jenkins)

    1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. 1 wget -O /etc/yum.repos.d/ ...

随机推荐

  1. Mac OS X Server 安装与应用

    Mac OS X Server 安装与应用 Mac OS X Server是苹果电脑公司新一代服务器软件.专为OS X和iOS设备.Mac OS X提供服务,现在支持Mavericks,能够轻松共享文 ...

  2. 搭建Android手机系统开发环境(转)

    Android作为近来表现十分强劲的手机操作系统,越来越受到开发人员的青睐,本篇文章将带领大家从零开始打造属于自己的开发环境. 一.JDK下载安装 JDK全称是Java Development Kit ...

  3. 使用SSL确保通信中的数据安全

    #region Server /// <summary> /// 用于保存非对称加密(数字证书)的公钥 /// </summary> private string public ...

  4. leetcode 58

    58. Length of Last Word Given a string s consists of upper/lower-case alphabets and empty space char ...

  5. Unieap3.5-Grid+Form下拉列表高度设置

    Form <div id="SUNIT_ID" name="SUNIT_ID" dojoType="unieap.form.ComboBox&q ...

  6. AnyCAD三维控件场景节点详解

    SceneNode是AnyCAD三维图形平台的AnyViz显示引擎的核心对象之一,只有放在场景管理器(SceneManager)里的节点才能被显示引擎所显示. 1.   节点分类 SceneNode是 ...

  7. Retrieve Only First x Rows

    From time to time you may have the need to grab the top X number of rows returned from a table. For ...

  8. c#中winform的MVP模式的简单实现

    MVP模式是类似于MVC模式的一种设计模式,最近在做项目学习过程中遇到,弄了很久终于有一些眉目,这是学习过程中的一些笔记.MVP指的是实体对象Model.视图Viw和业务处理Presenter.MVP ...

  9. IOS学习3

    @property属性使用 copy:NSString strong: 一般对象 weak: UI空间 assign:基本数据类型 retain: (对象,先上述类型使用) id 万能指针. id缺点 ...

  10. 限制<input>输入内容 只允许数字 或者 字母

    只能输入数字: 有回显 <input onkeyup="value=value.replace(/[^\d]/g,'')"> 只能输入数字:无回显 <input ...