#Установка Ejudge 3.1.0 на Ubuntu 14.04.01
Используемые версии
- ejudge-3.1.0
- ubuntu - 14.04 (32b)
Необходимые пакеты:
sudo apt-get update
sudo apt-get install bison flex gettext expat libexpat1-dev zlib1g-dev libncurses5-dev libncursesw5-dev sendmail gawk apache2 libcurl4-gnutls-dev libzip-dev libiconv-hook-dev gettext libmysqlclient-dev mysql-server mysql-client libdwarf-dev libelf-dev
sudo mkdir /usr/include/libdwarf
sudo ln -s /usr/include/dwarf.h /usr/include/libdwarf/dwarf.h
sudo ln -s /usr/include/libdwarf.h /usr/include/libdwarf/libdwarf.h
Установка ejudge.
Скачать, разархивировать. (Здесь и дальше директория /home/ejudge/ejudge)
cd /home/ejudge/ejudge/
./configure --prefix=/home/ejudge/inst-ejudge --enable-contests-home-dir=/home/ejudge/judges --with-httpd-cgi-bin-dir=/usr/lib/cgi-bin --with-httpd-htdocs-dir=/var/www/ --enable-ajax --enable-charset=utf-8
make&&make install
./ejudge-setup
Настроить базу
mysql -u root -p
CREATE USER 'ejudge'@'localhost' IDENTIFIED BY 'ejudge';
GRANT ALL PRIVILEGES ON * . * TO 'ejudge'@'localhost';
CREATE DATABASE ejudge;
Продолжаем установку
sudo sh ejudge-install.sh
Настройка Apache
Осторожно, используйте свою домашнюю папку, а не /home/ejudge/
cp -R /home/ejudge/inst-ejudge/libexec/ejudge/cgi-bin /var/www/ejudge/
ln -s /home/ejudge/inst-ejudge/share/ejudge/style/* /var/www/ejudge/
Создать файл /etc/apache2/sites-avaliable/ejudge.conf :
<VirtualHost *:80>
DocumentRoot /var/www/ejudge
Alias /ejudge/ /var/www/ejudge/
ScriptAlias /cgi-bin/ /var/www/ejudge/cgi-bin/
DirectoryIndex cgi-bin/new-register
<Directory /var/www/ejudge/cgi-bin>
Options +ExecCGI +FollowSymLinks +Includes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
И подключаем его
sudo a2ensite ejudge.conf
sudo a2enmod cgi
sudo service apache2 reload
Запуск ejudge:
~/inst-ejudge/bin/ejudge-control start
Доступен на сайте: http://localhost/cgi-bin/serve-control