Печать только stderr

Обсуждение вопросов, связанных с системой проведения турниров ejudge.
Post Reply
o2gy
Posts:2
Joined:10 March 2016, 15:11
Печать только stderr

Post by o2gy » 10 March 2016, 15:31

Добрый день!
Можно ли сделать так, чтобы сдающие видели только вывод stderr (в случае когда задача сдана неуспешно)?

Подробности: студенты сдают некий код, который, кроме прохождения тестов, еще и проверяется валгриндом (выбран компилятор gcc-vg). Это часто приводит к тому, что студенты не могут разобраться в причинах Runtime Error, приходится отвлекаться и разбираться, где конкретно происходит некорректная работа с памятью. Поэтому хотелось бы, чтобы они сами видели вывод valgrind. А он пишет в stderr, так что по идее вывода stderr было бы достаточно.
Я могу полностью открыть протокол тестирования - тогда будет видно, где valgrind нашел проблемы.
Но тогда вместе с этим студенты видят входные данные и эталонный ответ, когда получают обычный Wrong Answer. Этого нужно избежать.

Некоторые настройки (если нужны доп настройки, посмотрю и отпишу дополнительно):
Scoring system: ACM

Версия еджадж: version 2.3.29+ (SVN r7685)

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Печать только stderr

Post by cher » 11 March 2016, 09:58

В качестве возможного решения можно готовить архивы рабочих каталогов (опция use_tgz). Решения тогда должны работать с файлами. В полном протоколе входные данные показаны не будут.

Но это усложняет подтготовку задач. Почти наверняка потребуются проверяющие программы к задачам.

o2gy
Posts:2
Joined:10 March 2016, 15:11

Re: Печать только stderr

Post by o2gy » 11 March 2016, 10:52

Скажите, а в новых версиях такая возможность не реализована?
В принципе, я мог бы перейти на какой-либо более свежий релиз.

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Печать только stderr

Post by cher » 11 March 2016, 12:34

Сейчас ничего такого не реализовано.

valgrind умеет выводить в заданный файл, не обязательно на stderr. Скорее всего имеет смысл сделать возможным вывода лога исполнения программы, полученного от valgrind. В любом случае тогда нужно будет устанавливать последнюю версию ejudge или даже svn master.

Post Reply