Size: a a a

2021 April 06

IB

Ivan Bessarabov in Modern::Perl
fatal all останавливает на первом варнинге при выполнеии скрипта
источник

SL

Sergiy Leschenko in Modern::Perl
syntax check, для CI тестов
источник

OP

Oleg Pronin in Modern::Perl
Ошибка похожа на то что у тебя модуль сбилдился для не тредового перла, а запускается тредовый
источник

SZ

Sergey Zhmylove in Modern::Perl
Через LD_PRELOAD поменяй Perl_warner
источник

SZ

Sergey Zhmylove in Modern::Perl
Примерно так:
$ cat pw.c
#include <unistd.h>
void Perl_warner(){_exit(13);}
$ gcc -shared -fPIC -o pw.so pw.c
$ LD_PRELOAD=$PWD/pw.so /usr/bin/perl -e 'use warnings; $x::x = 1; exit 16' ; echo $?
источник

SZ

Sergey Zhmylove in Modern::Perl
Писал с телефона, поэтому мб ошибся где
источник

SL

Sergiy Leschenko in Modern::Perl
я пока сделал парсингом результата ) но спасибо
источник

SL

Sergiy Leschenko in Modern::Perl
но не работает, видимого эффекта нет, exit code 0
источник

SZ

Sergey Zhmylove in Modern::Perl
Как это он ноль, если там может быть либо 13, либо 16?
источник

SL

Sergiy Leschenko in Modern::Perl
LD_PRELOAD=/tmp/perl_warn.so /usr/bin/perl -e 'warn "AAA"'
echo $?
0
как-то так
LD_PRELOAD=/tmp/perl_warn.so ldd /usr/bin/perl          
       linux-vdso.so.1 (0x00007ffd21357000)
       /tmp/perl_warn.so (0x00007fd0cf091000)
      ...
источник

SL

Sergiy Leschenko in Modern::Perl
ну и при perl -cw  тоже $? == 0
источник

SZ

Sergey Zhmylove in Modern::Perl
Какой вопрос, такой ответ :)
Запусти мой пример
источник

SZ

Sergey Zhmylove in Modern::Perl
warn() работает по-другому
источник

SZ

Sergey Zhmylove in Modern::Perl
Можешь исходный свой код запустить вот из этого коммента
источник

SL

Sergiy Leschenko in Modern::Perl
cat pw.c
#include <unistd.h>
void Perl_warner() { _exit(13); }

gcc -shared -fPIC -o pw.so pw.c

LD_PRELOAD=/tmp/pw.so perl -e 'use warnings; $x::x=1; exit 16;'
echo $?
16
источник

SZ

Sergey Zhmylove in Modern::Perl
источник

SZ

Sergey Zhmylove in Modern::Perl
Странно, да? :)
источник

SL

Sergiy Leschenko in Modern::Perl
"подземный стук".  perl v5.26.1 Ubuntu 18.04.5 LTS
источник

DS

Dmitry Skvortsov in Modern::Perl
Доброго всем дня! Есть Центос 6, Апач 2 и Перл. В конфигах Апача ничего ни про mod_perl ни про параметры cgi не сказано. Но скрипты положенные в cgi-bin отрабатывают на ура! Где могут находится настройки? И вообще как понять в каком режиме оно работает?
источник

DS

Dmitry Skvortsov in Modern::Perl
Единственное - грузится mod_cgi.so
источник