Exception Occurs Due to a High Perl Version During Greenplum 5.11.3 Compilation and Installation
Symptom
Because the Perl version is too high, an error occurs during Greenplum compilation and installation. The message "Assigning non-zero to $[ is no longer possible at /parse.pl line 21" is displayed.
make[5]:Nothing to be done for 'all'. make[5]: Leaving directory '/disk/5113/gpdb-5.11.3/src/port' "/usr/bin/perl" ./parse.pl .< ../../../../src/backend/parser/gram.y > preproc.y Assigning non-zero to $[ is no longer possible at /parse.pl line 21. [Makefile:64: preproc.y] Error 255
The complete error information is as follows:

Key Process and Cause Analysis
In openEuler 22.03, the Perl version is too high to support assigning a non-zero value to $[. As a result, this fault occurs.
Conclusion and Solution
- Download the Perl 5.10.0 package.
Download link: https://github.com/Perl/perl5/tree/perl-5.10.0

- Decompress the Perl 5.10.0 package.
unzip v5.10.0
- Go to the Perl directory and perform compilation and installation.
cd perl5-5.10.0 ./Configure -des -Dprefix=/usr/local/perl make -j make install
- Change the default Perl version to the version in /usr/local/perl/bin/perl.
1 2
mv /usr/bin/perl /usr/bin/perl.old ln -s /usr/local/perl/bin/perl /usr/bin/perl
- Check the Perl version to ensure that Perl has been upgraded to 5.10.0.
perl -v

- Recompile Greenplum.
Parent topic: Troubleshooting