GNU automake 1.15をコンパイルしてインストールした後、automakeを実行するたびにこのエラーが発生します。
正規表現でエスケープされていない左中括弧は廃止され、正規表現で渡されます。
<-ここにm/\ $ {でマークされた<-ここ([^\t =:+ {}] +)} /
/ usr/local/bin/automake行3936に
私はPerl v5.22.0を持っています
サポート終了の警告は、それ自体では問題ではありません。
Perl 5.21.1リリースノート は以下を示します。
正規表現パターンでリテラルの左中かっこ(左中かっこ)が必要な場合は、バックスラッシュ( "\ {")を前に付けるか、角かっこ "[{]"で囲むことでエスケープする必要があります。 、または\ Qを使用します。それ以外の場合は、非推奨の警告が発生します。これはv5.16のリリースで最初に発表されました。言語の将来の拡張が可能になります。
古いバージョンのPerlとの互換性を維持したい場合もありますが、Automakeの作成者に このバグを報告 することができます。
私が誤ってbashでechoの代わりに 'print'を使用していたため、このエラーが発生しました。
print "abcd123" | Perl -e 'myscript' #causes error
解決策はエコーを使用することでした、私は言語を混合することで印刷/エコーを混乱させました
echo "abcd123" | Perl -e 'myscript' #is fine
printf "abcd123" | Perl -e 'myscript' #is fine too, "printf" not print