RSS
 

shflags, FreeBSD и ошибка expr

05 мая

После миграции моего мегаскрипта для подготовки видеоконтента с linux на правильную ОС возникла ошибка expr(1):

expr: illegal option -- s
usage: expr [-e] expression

Ошибка генерируется внутри shflags – в сторону expr(1) передается параметр, начинающийся с ‘-’ (минус), чего штатный expr(1) не принимает. Оставим в сторону его корректность или некорректность в данном конкретном случае.

Выйти из ситуации можно достаточно просто: идем в  /usr/ports/sysutils/coreutils, делаем make install clean и получаем установленные GNU Coreutils. Версии утилит имеют префикс g – gexpr, gkill, gdu и т.п. Полный список можно посмотреть в pkg-descr, расположнном в каталоге /usr/ports/sysutils/coreutils.

Итак, мы имеем установленный более другой expr(1) с именем gexpr. Открываем /usr/local/lib/shflags, меняем все строки expr на gexpr и, вуаля – наш суперскрипт работает без проблем.

 

Tags: , , ,

Leave a Reply

You must be logged in to post a comment.