1. 报错现象:

SUSE Linux 下编译Nginx(make阶段)报错,报错信息如下:

configure: error: Invalid C++ compiler or C++ compiler flags
objs/Makefile:1471: recipe for target '/opt/pcre-8.45/Makefile' failed
make[1]: *** [/opt/pcre-8.45/Makefile] Error 1
make[1]: Leaving directory '/opt/nginx-1.24.0'
Makefile:13: recipe for target 'install' failed
make: *** [install] Error 2

SUSE Linux下编译Nginx报错:recipe for target ‘install‘ failed_nginx

2. 可能原因:

  Linux系统缺少gcc-c++包。

3. 解决方案:

安装gcc-c++包后重新编译安装

zypper install gcc-c++

zypper install gcc-c++
正在加载软件源数据...
正在读取已安装的软件包...
正在解决软件包依赖关系...

将安装以下 3 个新软件包:
  gcc48-c++ gcc-c++ libstdc++48-devel 

将升级以下 1 个软件包:
  libstdc++6 

1 个软件包待升级, 3 个软件包将新装.
总下载大小:8.8 MiB。已缓存:0 B 操作完成后,将占用额外的 38.6 MiB 空间。
继续吗? [y/n/? 显示全部选项] (y): y
正在撷取 软件包 libstdc++6-6.2.1+r239768-2.4.x86_64                                                                                                       (1/4), 364.7 KiB (解压后   1.5 MiB)
正在撷取 软件包 libstdc++48-devel-4.8.5-30.1.x86_64                                                                                                       (2/4),   2.8 MiB (解压后  23.5 MiB)
正在撷取 软件包 gcc48-c++-4.8.5-30.1.x86_64                                                                                                               (3/4),   5.6 MiB (解压后  14.5 MiB)
正在撷取 软件包 gcc-c++-4.8-6.189.x86_64                                                                                                                    (4/4),   4.8 KiB (解压后     0 B)
正在检查文件冲突: ....................................................................................................................................................................[完毕]
(1/4) 正在安装:libstdc++6-6.2.1+r239768-2.4 ..........................................................................................................................................[完毕]
(2/4) 正在安装:libstdc++48-devel-4.8.5-30.1 ..........................................................................................................................................[完毕]
(3/4) 正在安装:gcc48-c++-4.8.5-30.1 ..................................................................................................................................................[完毕]
(4/4) 正在安装:gcc-c++-4.8-6.189 .....................................................................................................................................................[完毕]
一些运行中的程序可能使用着最近升级删除的文件。您可能希望检查并重启部分程序。可运行 'zypper ps' 列出这些程序。

4. 延伸:

 此解决方案同样适用于CentOS等其他序列的Linux发行版本,直接使用如下命令安装即可。

yum install gcc-c++