Я хочу скомпилировать свои программы на C / C ++ на удаленном сервере. Компилятор находится на одном ПК (сервере) и другом клиентском ПК, подключенном к серверу через LAN / WLAN. Клиенты пишут программу и отправляют ее на сервер. Сервер компилирует программу и отправляет вывод / ошибку на клиентский ПК. Как я мог это сделать? Как и где начать этот проект?
Пытаться DistCC, распределенный C / C ++ — компилятор.
Дженкинс иногда очень медленный и имеет много утечек памяти. Если ваш сервер медленный, то я рекомендую вам использовать Buildbot или написать свой собственный скрипт, который будет запускаться после новой фиксации в хранилище. Есть python.git.
https://gitorious.org/git-python
с Ubuntu это просто:
sudo apt-get install gitpython
В последнее время очень популярным решением является Дженкинс.
http://jenkins-ci.org/.
Jenkins может быть запущен вашим хранилищем (например, SVN, GIT и т. Д.). Как сторожевой таймер — сделайте что-нибудь, когда обнаружите, что в репозитории есть новый коммит. Например, когда вы делаете коммит в GIT-репозиторий, он автоматически запускает скрипт на сервере.
Этот скрипт может вернуть значение. Если он вернет (в примере) значение false, то ваша сборка будет прервана, и на веб-сайте jenkins HTTP появится красный шар, и пользователь получит электронное письмо. Вот как это выглядит:
http://www.findbestopensource.com/AppImages/Article/jenkins-img1.jpg
Дженкинс может кивнуть. В меню есть консольный вывод, вина, различия и множество бесплатных плагинов. Установка очень проста даже для человека, не связанного с ИТ.
Так что единственное, что вам нужно для подключения jenkins к вашим локальным машинам — это репозиторий, который вы наверняка используете прямо сейчас;)