CentOS 7.3 源码安装squid 4.12 及安装过程遇到的一些问题

一、源码安装squid 4.12

1.下载squid-4.12源码包

wget http://www.squid-cache.org/Versions/v4/squid-4.12.tar.gz
tar -zxvf squid-4.12.tar.gz -C /usr/local/

2.编译配置

cd /usr/local/squid-4.12/
./configure --prefix=/usr/local/squid \
--enable-arp-acl \
--enable-linux-netfilter \
--enable-linux-tproxy \
--enable-async-io=100 \
--enable-err-language="Simplify_Chinese" \
--enable-poll \
--enable-gnuregex

配置成功会看到有Makefile 文件

3.编译安装

make && make install

编译安装时间比较长(主要时make 时间毕比较长)

4.其他配置

添加软链接: ln -s /usr/local/squid/sbin/* /usr/local/sbin/
添加新用户:useradd -M -s /sbin/nologin squid
配置权限:chown -R squid:squid /usr/local/squid/var/

5.配置squid

vi /usr/local/squid/etc/squid.conf
开启缓存目录位置:cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256
添加运行用户:cache_effective_user squid
添加运行组:cache_effectice_group squid
添加主机名:visible_hostname ip/域名

修改完后,执行↓

测试配置:squid -k parse
初始化:squid -z

6.启动和关闭squid

启动:squid
后台启动:squid -s
检测是否启动成功:netstat -anpt|grep squid

启动成功会有以下信息:

tcp        0      0 0.0.0.0:3128            0.0.0.0:*               LISTEN      15465/(squid-1)
关闭服务:squid -k shutdown  或者 kill -9 15465

7.测试squid 代理服务是否可以正常使用

 curl -x 本地IP:3128 http://www.baidu.com -I

 正常:HTTP/1.1 200 OK

二、问题解决:

问题一 (gcc版本问题):

configure: error: ***A compiler with support for c++11 language features is required.

gcc 版本太低(yum 命令安装的gcc 版本太低)

1.yum安装依赖包

yum install -y epel-release
yum install -y gcc gcc-c++ gcc-gnat libgcc libgcc.i686 glibc-devel bison flex texinfo Development Tools

2.下载gcc源码包

cd /usr/local/src
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-8.3.0/gcc-8.3.0.tar.xz
tar -xJvf gcc-8.3.0.tar.xz

3.检查和下载gcc依赖库

cd /usr/local/src/gcc-8.3.0
./contrib/download_prerequisites

 运行这个命令会柱塞一段时间,别停掉!!!下载完会自动解压,不需要安装这些依赖库。

4.创建编译目录和编译安装

cd /usr/local/src/gcc-8.3.0
mkdir build && cd build
../configure --prefix=/usr/local/gcc-8.3.0 \
--enable-checking=release \
--enable-languages=c,c++ \
--disable-multilib
make && make install

5.配置环境变量

export PATH=/usr/local/gcc-8.3.0/bin:$PATH
source /etc/profile

6.检查gcc 版本

gcc -v

问题二:报错:lib64/libstdc++.so.6

lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./cf_gen)

1.查找编译gcc时生成的最新动态库:

find / -name "libstdc++.so*"

 2.查看当前libstdc++.so.6 软链接指向

ll /usr/lib64/libstdc++*

3.重建软链接

mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.backup
cp /usr/local/gcc-8.3.0/lib64/libstdc++.so.6.0.25 /usr/lib64/
ln -s /usr/lib64/libstdc++.so.6.0.25 /usr/lib64/libstdc++.so.6

检查是否成功:ll /usr/lib64/libstdc++.so.6*

  • 22
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java全栈布道师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值