2015-07-23 3 views
0

Я пытаюсь создать большую базу устаревших кодов, которая имеет проблемы с построением новой инструментальной цепочки. Для того чтобы ускорить проблемы крепления, я бегуСписок всех неудачных целей

make -k 

построить все, что может быть построен, так что я могу потом сосредоточиться на Несобираемые вещи. Но даже тогда один make занимает минуту, чтобы выяснить следующую проблему, над которой нужно работать (эта база кода использует запутанный беспорядок Makefile, который занимает много времени для разбора).

Есть ли способ перечислить все цели, которые не удались во время одного прогона make -k?

ответ

1

Я бы перенаправил вывод make -k в файл, а затем посмотрел на него шаблоны ошибок. Я использую vim и я обычно ищу их:

make:\ \*\*\* 
\*\*\*\ \[ 

A (пользовательский) журнал анализатор может быть записан, а по мере необходимости.

+0

Хорошо, спасибо. Я добавлю, что 'make' печатает эти ошибки в stderr, поэтому я могу игнорировать stdout при grepping. вероятно, будет достаточно хорош для моих целей, но отсутствие хорошего вывода машинного анализа не является хорошим знаком ... – liori

+0

Для этой конкретной задачи (ошибки из самого себя) это нормально только с stderr, но если вы хотите глубже проникнуть в ошибку из дочерние процессы, вы можете * также получить STDUT, но не все процессы последовательно используют stderr для своих ошибок. Кроме того, некоторые другие сообщения только для stdout могут быть полезны для анализа сбоя сборки. –

-1

При отладке также стоит обратить внимание на нерегулярности синхронизации, где часть сообщения stderr может быть отсутствует! image