Difference between revisions of "Serve.cfg:global:enable run props"

From EjudgeWiki
 
(...)
Line 1: Line 1:
 
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve.cfg]]/[[serve.cfg:global|Глобальные конфигурационные параметры]]/<code>[[Serve.cfg:global:enable_run_props|enable_run_props]]</code>
 
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve.cfg]]/[[serve.cfg:global|Глобальные конфигурационные параметры]]/<code>[[Serve.cfg:global:enable_run_props|enable_run_props]]</code>
 +
 +
Если переменная установлена в положительное значение, результатом компиляции программы может быть
 +
не только исполняемый файл, как в предыдущих версиях, но и дополнительный файл со свойствами скомпилированной
 +
программы.
 +
 +
При включенном <code>enable_run_props</code> компонент [[ej-compile]] передаёт скрипту компиляции не два, а три
 +
аргумента командной строки:
 +
* имя файла с исходным кодом;
 +
* имя файла, в который должен быть записан результат компиляции;
 +
* имя выходного файла с дополнительными свойствами скомпилированной программы.
 +
 +
Если скрипт компиляции не создал выходной файл со свойствами, это не рассматривается как ошибка,
 +
а в дальнейшем скомпилированная программа передаётся на выполнение по обычной схеме.
 +
 +
Файл со свойствами должен быть корректным JSON-файлом с одним объектом со следующими атрибутами:
 +
* <code>start_cmd</code> &mdash; путь к интерпретатору, который должен использоваться для запуска программы на исполнение;
 +
* <code>start_args</code> &mdash; аргументы командной строки для интерпретатора;
 +
* <code>start_env</code> &mdash; переменные окружения, которые должны быть установлены при запуске тестируемой программы на выполнение;
 +
* <code>is_archive</code> &mdash;
  
 
Поддерживается начиная с версии [[изменения в версии 3.13.0|3.13.0]].
 
Поддерживается начиная с версии [[изменения в версии 3.13.0|3.13.0]].

Revision as of 05:19, 29 December 2024

Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Глобальные конфигурационные параметры/enable_run_props

Если переменная установлена в положительное значение, результатом компиляции программы может быть не только исполняемый файл, как в предыдущих версиях, но и дополнительный файл со свойствами скомпилированной программы.

При включенном enable_run_props компонент ej-compile передаёт скрипту компиляции не два, а три аргумента командной строки:

  • имя файла с исходным кодом;
  • имя файла, в который должен быть записан результат компиляции;
  • имя выходного файла с дополнительными свойствами скомпилированной программы.

Если скрипт компиляции не создал выходной файл со свойствами, это не рассматривается как ошибка, а в дальнейшем скомпилированная программа передаётся на выполнение по обычной схеме.

Файл со свойствами должен быть корректным JSON-файлом с одним объектом со следующими атрибутами:

  • start_cmd — путь к интерпретатору, который должен использоваться для запуска программы на исполнение;
  • start_args — аргументы командной строки для интерпретатора;
  • start_env — переменные окружения, которые должны быть установлены при запуске тестируемой программы на выполнение;
  • is_archive

Поддерживается начиная с версии 3.13.0.