文档章节

Linux下安装gcc、libevent、boost、nginx

outsidee
 outsidee
发布于 2017/05/18 10:11
字数 791
阅读 10
收藏 0

 

一般来说Linux分两大类:

RedHat系列:包含Redhat、Centos、Fedora等,常见的安装包格式 rpm包,安装rpm包的命令是"rpm -参数"、包管理工具 yum、支持tar包

Debian系列:包含Debian、Ubuntu等,常见的安装包格式 deb包,安装deb包的命令是"dpkg -参数"、包管理工具 apt-get、支持tar包

 

如果没有root权限,服务器网络权限等,单独在自己的用户下部署环境,则需要下载源码进行编译,configure指定安装的路径完后,再make && make install,如果报缺少依赖包,还要一一安装依赖包。

以下的/home/pjw/bin/表示在用户pjw下建立一个bin用作软件的安装的路径

 

1.安装gcc

为了支持C++11,需要另外安装一个较新版的gcc,此处安装的是官网下载的gcc 4.9.3

ftp://ftp.gnu.org/gnu/gmp/

http://www.multiprecision.org/mpc/lib

http://ftp.gnu.org/gnu/mpfr/

./configure --prefix=/home/pjw/bin/gmp
make && make install
./configure --prefix=/home/pjw/bin/mpfr  --with-gmp=/home/pjw/bin/gmp
make && make install
./configure --prefix=/home/pjw/bin/mpc  --with-gmp=/home/pjw/bin/gmp -with-mpfr=/home/pjw/bin/mpfr
make && make install
LD_LIBRARY_PATH=/home/pjw/bin/gmp/lib:/home/pjw/bin/mpfr/lib/:/home/pjw/bin/mpc/lib:$LD_LIBRARY_PATH


./configure --prefix=/home/pjw/bin/gcc  --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ -with-gmp=/home/pjw/bin/gmp --with-mpfr=/home/pjw/bin/mpfr --with-mpc=/home/pjw/bin/mpc
make && make install

 

2.安装libevent

./configure --prefix=/home/pjw/bin/libevent
make && make install
export LD_LIBRARY_PATH=/home/pjw/bin/libevent/lib:$LD_LIBRARY_PATH

libevent-2.0.22-stable/sample有示例

开发只需要在makefile加上头文件和动态库路径和-levent

 

3.安装boost

到官网下载,解压:tar xf boost_1_63_0.tar.bz2

./bootstrap.sh  --prefix=/home/pjw/bin/boost/,生成的b2和bjam

./b2 install

期间安装如果报缺失python的头文件,则可以在./tools/build/src/tools/python.jam查看需要的python版本,安装好并配置后再次执行安装即可,具体配置如下:

export CPLUS_INCLUDE_PATH=/home/pjw/bin/python/include/python2.3:$CPLUS_INCLUDE_PATH

export C_INCLUDE_PATH=/home/pjw/bin/python/include/python2.3:$C_INCLUDE_PATH

export PATH=/home/pjw/bin/python/bin:$PATH

export LD_LIBRARY_PATH=/home/pjw/bin/python/lib/python2.3:$LD_LIBRARY_PATH

 

4.安装nginx

到官网下载nginx,但要先下载并安装依赖的pcre,版本是要根据nginx的版本而定

./configure --prefix=/home/pjw/bin/pcre
make && make install
./configure --prefix=/home/pjw/bin/nginx --with-http_stub_status_module --with-http_ssl_module  --with-stream --with-pcre=/home/pjw/pcre-8.35
make && make install

其中--with-pcre是指pcre的源码路径,非安装的目录

 

修改conf/nginx.conf,把用户组和用户名修改,修改端口后启动,即可通过网页访问

测试配置文件:sbin/nginx -t

./sbin/nginx -s reload            # 重新载入配置文件

./sbin/nginx -s reopen           # 重启 Nginx

./sbin/nginx -s stop              # 停止 Nginx

可以通过elinks http://localhost:port/ 来访问

 

其中放通端口给外部机器访问的方法:

方法一:命令行方式

1. 开放端口命令: /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

2.保存:/etc/rc.d/init.d/iptables save

3.重启服务:/etc/init.d/iptables restart

4.查看端口是否开放:/sbin/iptables -L -n

    

方法二:直接编辑/etc/sysconfig/iptables文件

1.编辑/etc/sysconfig/iptables文件:vi /etc/sysconfig/iptables

加入内容并保存:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

2.重启服务:/etc/init.d/iptables restart

3.查看端口是否开放:/sbin/iptables -L -n

© 著作权归作者所有

共有 人打赏支持
下一篇: C时间函数
outsidee
粉丝 0
博文 3
码字总数 2713
作品 0
广州
程序员
私信 提问
tomcat+memcached会话保持无标题文章

测试环境: nginx-one:192.168.0.110 (用于负载均衡测试) tomcat-one+memcached:192.168.0.112 tomcat-two+memcached:192.168.0.114 软件版本: Linux:Centos6.5 nginx-1.8.1.tar.gz or......

xudongt
2017/01/11
0
0
linux环境配置单机FastDFS文件存储服务器

搭建linux环境下的FDFS文件服务器,用于图片文件、视频文件、音频文件的存储管理。 测试环境: tracker server 和 storage server 在同一台机器121.42.25.134上 nginx 与 storage server 对接...

xiejunbo
2015/02/27
0
0
centos6.5 安装PHP7+nignx+msyql

安装PHP 安装PHP相关依赖 源码安装 PHP 5.6及以上已经内置了php-fpm,不需要再使用外挂的方式安装php-fpm。只需要编译时加上“--enable-fpm”参数即可。 以上为只标注了部份php扩展,如需打开...

leeyi
2016/10/25
55
0
CentOS6.4安装Python web开发+生产环境

CentOS6.4安装Python web开发+生产环境 1.概述 centos6.4安装Python, setuptool, pip, virtualenv, mysql, django, libevent, memcache, nginx, git, beyond compare, jdk, eclipse, pydev ......

河北李晓东
2017/07/13
0
0
wdlinux centos 7 gearman安装

一、GearMan环境安装 依赖环境:yum install -y boost-devel gperf libevent-devel libuuid-devel 如果boost版本太低,则要自己编译安装 下载地址:https://launchpad.net/gearmand/ wget ht...

刘草
2016/10/08
95
0

没有更多内容

加载失败,请刷新页面

加载更多

剖析Elasticsearch的IndexSorting:一种查询性能优化利器

摘要: 前言 前两周写过一篇《基于Lucene查询原理分析Elasticsearch的性能》,在最后留了一个彩蛋,说下一篇会介绍一种可以极大的优化查询性能的技术。本文就来介绍这种技术——IndexSortin...

阿里云官方博客
23分钟前
0
0
Go 使用channel控制并发

前言 channel一般用于协程之间的通信,channel也可以用于并发控制。比如主协程启动N个子协程,主协程等待所有子协程退出后再继续后续流程,这种场景下channel也可轻易实现。 场景示例 总结 ...

恋恋美食
48分钟前
2
0
斐波那契堆的理解,节点mark属性和势函数

斐波那契堆 看了好多博客,都是照搬算法导论的内容,没有自己的理解,比如为什么有mark属性,势函数的作用,以及为什么叫斐波那契堆,下面说说鄙人的理解。 势函数 势函数是根节点个数加上2...

杨喆
53分钟前
6
0
NIO源码详解

阻塞io和无阻塞io: 阻塞io是指jdk1.4之前版本面向流的io,服务端需要对每个请求建立一堆线程等待请求,而客户端发送请求后,先咨询服务端是否有线程相应,如果没有则会一直等待或者遭到拒 ...

沉稳2018
57分钟前
1
0
如何把已经提交的commit, 从一个分支放到另一个分支

在本地master提交了一个commit(8d85d4bca680a5dbcc3e5cfb3096d18cd510cc9f),如何提交的test_2分之上? git checkout test_2git cherry-pick 8d85d4bca680a5dbcc3e5cfb3096d18cd510cc9f......

stephen_wu
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部