Я нахожусь в процессе отладки программы C (чего я не делал) Пишу). У меня включены все внутренние инструменты отладки (целая куча printf), и я написал небольшой PHP-скрипт, который использует proc_open () и просто захватывает как stdout, так и stderr, и координирует их по времени в одном файле.
На данный момент двоичный файл умирает из-за ошибки realloc (), обнаруженной glibc, и печатается обратная трассировка glibc, начиная с:
*** glibc detected *** /sbin/rsyslogd: realloc(): invalid next size: 0x00002ace626ac910 ***
Вот что я не делаю ' Я понял: я подтвердил, что PHP-скрипт перехватывает как stdout, так и stderr из двоичного процесса и записывает их в нужные файлы, но эта обратная трассировка по-прежнему выводится на консоль. Откуда это взялось? Есть ли какой-нибудь волшебный выходной канал, кроме stdout и stderr?
Есть идеи, как мне записать эту трассировку в файл или отправить ее с помощью stderr?
Спасибо, Мы подтвердили, что сценарий PHP перехватывает как stdout, так и stderr из двоичного процесса и записывает их в нужные файлы, но эта обратная трассировка по-прежнему выводится на консоль. Откуда это взялось? Есть ли какой-нибудь волшебный выходной канал, кроме stdout и stderr?
Есть идеи, как мне записать эту трассировку в файл или отправить ее с помощью stderr?
Спасибо, Мы подтвердили, что сценарий PHP перехватывает как stdout, так и stderr из двоичного процесса и записывает их в нужные файлы, но эта обратная трассировка по-прежнему выводится на консоль. Откуда это взялось? Есть ли какой-нибудь волшебный выходной канал, кроме stdout и stderr?
Есть идеи, как мне записать эту трассировку в файл или отправить ее с помощью stderr?
Спасибо, Jason