Difference between revisions of "Win32-тестирование"
Line 11: | Line 11: | ||
CONTESTS_HOME_DIR обозначает каталог, в котором находятся каталоги турнира. Обычно это /home/judges или /var/lib/ejudge. | CONTESTS_HOME_DIR обозначает каталог, в котором находятся каталоги турнира. Обычно это /home/judges или /var/lib/ejudge. | ||
− | 1. Скачайте Пакет поддержки Win32-тестирования и разархивируйте его в каталоге CONTESTS_HOME_DIR. В результате должен появиться каталог win32_compile. | + | 1. Скачайте [http://www.ejudge.ru/download/ejudge-win32-20100119.tgz Пакет поддержки Win32-тестирования] и разархивируйте его в каталоге CONTESTS_HOME_DIR. В результате должен появиться каталог win32_compile. |
2. Каталог CONTESTS_HOME_DIR должен быть доступен для чтения/записи с Windows-машины, на которой будет производиться компиляция и тестирование программ. Этого можно добиться либо с помощью samba, либо NFS, либо еще каким-либо другим средством. Для этого обратитесь к документации по Linux. | 2. Каталог CONTESTS_HOME_DIR должен быть доступен для чтения/записи с Windows-машины, на которой будет производиться компиляция и тестирование программ. Этого можно добиться либо с помощью samba, либо NFS, либо еще каким-либо другим средством. Для этого обратитесь к документации по Linux. | ||
+ | |||
+ | 3. В каталоге win32_compile/scripts находятся скрипты компиляции. При необходимости модифицируйте пути в этих скриптах, чтобы они соответствовали установленным компиляторам на тестирующей машине. В настоящее время поддерживаются следующие компиляторы: | ||
+ | * msvc - Microsoft Visual C | ||
+ | * msvcpp - Microsoft Visual C++ | ||
+ | * msvb - Microsoft Visual Basic | ||
+ | * msvcs - Microsoft Visual C# | ||
+ | * delphi - Delphi | ||
+ | * pasabc - Pascal ABC .NET | ||
+ | |||
+ | 4. На тестирующей Windows-машине подключите каталог CONTESTS_HOME_DIR с Linux-сервера. Назовем соответствующий диск EJUDGE_DRIVE. | ||
+ | |||
+ | 5. В каталоге win32_compile/bin находится файл nwrun.cfg. Отредактируйте его таким образом, чтобы параметр spool_dir указывал на подключенный диск EJUDGE_DRIVE. Обратите внимание, что <b>не нужно</b> редактировать work_dir, параметр /TMPDIR будет автоматически заменен на путь к каталогу для временных файлов в системе. | ||
+ | |||
+ | Для запуска компиляции и тестирования на Windows-машине необходимо запустить программы ej-compile.exe и ej-nwrun.exe, которые находятся в каталоге win32_compile/bin. | ||
+ | |||
+ | Программа ej-compile.exe запускается следующей командой: | ||
+ | ej-compile -r EJUDGE_DRIVE | ||
+ | не забудьте указать двоеточие после имени диска. Например: | ||
+ | ej-compile -r j: | ||
+ | |||
+ | Программа ej-nwrun.exe запускается командой: | ||
+ | ej-nwrun | ||
+ | |||
+ | Для включения поддержки Windows-компиляторов в турнирах выполните следующие действия: | ||
+ | |||
+ | 1. Войдите в редактирование турнира в CGI-программе serve-control. Выберите закладку "Global settings (serve.cfg)". | ||
+ | На этой странице установите параметр "Enable Win32 languages" в значение YES. Сохраните турнир (COMMIT Changes). | ||
+ | |||
+ | 2. Второй раз войдите в редактирование турнира. В закладке Language settings должны быть доступны компиляторы Windows. |
Revision as of 21:44, 18 January 2010
Навигация: Главная страница/Система ejudge/Использование/Win32-тестирование
Начиная с версии 2.3.15 поддерживается тестирование программ на платформе Win32. Серверная часть при этом по-прежнему работает на Linux.
Внимание. В режиме тестирования под Windows не обеспечивается ограничение прав исполняемой программы. НЕ РЕКОМЕНДУЕТСЯ использовать тестирование под Windows в ситуациях, когда тексты программ поступают из неконтролируемых источников.
Ниже описываются шаги, которые необходимо выполнить, для включения поддержки тестирования на платформе Win32.
CONTESTS_HOME_DIR обозначает каталог, в котором находятся каталоги турнира. Обычно это /home/judges или /var/lib/ejudge.
1. Скачайте Пакет поддержки Win32-тестирования и разархивируйте его в каталоге CONTESTS_HOME_DIR. В результате должен появиться каталог win32_compile.
2. Каталог CONTESTS_HOME_DIR должен быть доступен для чтения/записи с Windows-машины, на которой будет производиться компиляция и тестирование программ. Этого можно добиться либо с помощью samba, либо NFS, либо еще каким-либо другим средством. Для этого обратитесь к документации по Linux.
3. В каталоге win32_compile/scripts находятся скрипты компиляции. При необходимости модифицируйте пути в этих скриптах, чтобы они соответствовали установленным компиляторам на тестирующей машине. В настоящее время поддерживаются следующие компиляторы:
- msvc - Microsoft Visual C
- msvcpp - Microsoft Visual C++
- msvb - Microsoft Visual Basic
- msvcs - Microsoft Visual C#
- delphi - Delphi
- pasabc - Pascal ABC .NET
4. На тестирующей Windows-машине подключите каталог CONTESTS_HOME_DIR с Linux-сервера. Назовем соответствующий диск EJUDGE_DRIVE.
5. В каталоге win32_compile/bin находится файл nwrun.cfg. Отредактируйте его таким образом, чтобы параметр spool_dir указывал на подключенный диск EJUDGE_DRIVE. Обратите внимание, что не нужно редактировать work_dir, параметр /TMPDIR будет автоматически заменен на путь к каталогу для временных файлов в системе.
Для запуска компиляции и тестирования на Windows-машине необходимо запустить программы ej-compile.exe и ej-nwrun.exe, которые находятся в каталоге win32_compile/bin.
Программа ej-compile.exe запускается следующей командой:
ej-compile -r EJUDGE_DRIVE
не забудьте указать двоеточие после имени диска. Например:
ej-compile -r j:
Программа ej-nwrun.exe запускается командой:
ej-nwrun
Для включения поддержки Windows-компиляторов в турнирах выполните следующие действия:
1. Войдите в редактирование турнира в CGI-программе serve-control. Выберите закладку "Global settings (serve.cfg)". На этой странице установите параметр "Enable Win32 languages" в значение YES. Сохраните турнир (COMMIT Changes).
2. Второй раз войдите в редактирование турнира. В закладке Language settings должны быть доступны компиляторы Windows.