После компиляции и установки GNU automake 1.15 я получаю эту ошибку всякий раз, когда запускаю automake:
Неэкранированная левая фигурная скобка в регулярном выражении устарела, передается в регулярном выражении;
отмечены <- ЗДЕСЬ в m / \ $ {<- ЗДЕСЬ ([^ \ t =: + {}] +)} /
в / usr / local / bin / automake, строка 3936
У меня perl v5.22.0
Предупреждение об устаревании не является проблемой само по себе.
В Заметки о выпуске Perl 5.21.1 указать:
Если вам нужна буквальная левая фигурная скобка (также называемая левой фигурной скобкой) в шаблоне регулярного выражения, вы должны теперь избежать ее, поставив перед ней обратную косую черту ("\ {") или заключив ее в квадратные скобки "[{]" , или используя \ Q; в противном случае будет выдано предупреждение об устаревании. Впервые об этом было объявлено в выпуске v5.16; это позволит будущим расширениям языка произойти.
Ты мог сообщить об этой ошибке авторам Automake, хотя они могут захотеть сохранить совместимость со старыми версиями Perl.
Я получил эту ошибку только потому, что по ошибке использовал print вместо echo в bash:
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