未标题-3.jpg

使用lnmp.org环境在安装innoshop时,访问域名时显示空白,同时报http error 500的错误,去官方看了一下要求是php8.2以上版本,而我本机环境是7.x,需要安装php的多版本。

到shell中执行.install.sh mphp,开始运行,但在几分钟后提示安装失败,并有大量报错,不过日志中有一段:

configure: error: *** A compiler with support for C++17 language features is required

搜了一圈没搜到,跑到deepseek问了一下,得到的结果如下:

在CentOS 7上使用lnmp.org脚本安装多版本PHP时出现configure: error: *** A compiler with support for C++17 language features is required错误,是因为系统默认的GCC版本(4.8.5)不支持C++17标准。

过程比较曲折,走了一些弯路,这里只写了顺序的过程:

1.切换Vault源

由于墙的存在,国内163和aliyun源虽好,但是连接容易中断,外面的Vault源比较全面。

备份原有源
sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

修改基础源配置
sudo vi /etc/yum.repos.d/CentOS-Base.repo

替换为以下内容
[base]
name=CentOS-7 - Base (Vault)
baseurl=http://vault.centos.org/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1

[updates]
name=CentOS-7 - Updates (Vault)
baseurl=http://vault.centos.org/7.9.2009/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1

[extras]
name=CentOS-7 - Extras (Vault)
baseurl=http://vault.centos.org/7.9.2009/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1

禁用 fasttrack 源(避免冲突)
sudo sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/CentOS-Base.repo

清理并重建缓存
sudo yum clean all
sudo yum makecache

验证源状态
yum repolist
repo id             repo name
base/7/x86_64       CentOS-7 - Base (Vault)
updates/7/x86_64    CentOS-7 - Updates (Vault)
extras/7/x86_64     CentOS-7 - Extras (Vault)
有vault字样说明正确。

 

2.安装DevToolset

a.修改google dns
sudo tee /etc/resolv.conf <<'EOF'
nameserver 8.8.8.8
nameserver 8.8.4.4
EOF

b.禁用 Fastest Mirror 插件
sudo sed -i 's/^enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf

c.安装 DevToolset
# 更新系统并安装 DevToolset-11
sudo yum update -y
sudo yum install devtoolset-11 -y

至此c++环境已经更新成功。


3. 安装php多版本
运行./install.sh mphp,选php8.2,至安装完成。

4.使用php8.2版本
找到/usr/local/nginx/conf/vhost/下面对应网站的配置文件,修改:
将include enable-php.conf修改为php8.2的enable-php8.2.conf并保存。

5.重启系统,问题解决。

标签: none

评论已关闭