Привіт всій спільноті. Сьогодні напишу як налаштувати прив'язку qt і ruby в Linux і Windows.
Ruby - інтерпретована мова високого рівня для швидкого і зручного об'єктно-орієнтованого програмування. Мова володіє незалежною від операційної системи реалізацією багатопоточності, суворою динамічною типізацією, «збирачем сміття» і багатьма іншими можливостями. Ruby близький за особливостями синтаксису до мов Перл і Ейфель, за об'єктно-орієнтованим підходом до Smalltalk. Також деякі риси мови взято з Python, Лисиць, Dylan і CLU. Детальніше тут
Trolltech Qt (вимовляється «к'ют») - крос-платформенний інструментарій розробки ПЗ мовою програмування C++.
Linux
Система лінукс у мене буде Ubuntu, оскільки на ній працюю. Думаю під інші буде теж не важко. Почнемо з неї. Заходимо до розділу Система- > Адміністрування - > Менеджер пакунків Synaptic. Нам по мінімуму треба поставити пакети:
- ruby-full - повна інсталяція рубі
- rubygems - gems для ruby
- libgemplugin-ruby - плагін для рубі
- libqt4-ruby - бібліотека ruby для роботи з qt
Решта залежності система сама підтягне (наприклад libqt4-core, libqt4-gui та інше)
Також нам потрібно редактор для роботи з Ruby. Я використовую SciTE. Це справа смаку:)
Після того як пакети встановлені ми можемо протестувати працездатність. Заходимо в туторіал, і візьмемо наприклад 3 приклад.
require 'Qt4'
app = Qt::Application.new(ARGV)
window = Qt::Widget.new()
window.resize(200, 120)
quit = Qt::PushButton.new('Quit', window)
quit.font = Qt::Font.new('Times', 18, Qt::Font::Bold)
quit.setGeometry(10, 40, 180, 40)
Qt::Object.connect(quit, SIGNAL('clicked()'), app, SLOT('quit()'))
window.show()
app.exec()
Розписувати що даний код робить я не буду - там нижче в тому ж мануалі все пояснюється докладно. Повинна з'явитися форма з кнопкою виходу. Код у SciTE зберігаємо під розширенням rb і натискаємо F5 (типові переметри повинні відмінно спрацювати).
Наш результат
А ось і довгоочікуване віконце
Якщо воно з'явилося - значить все встановлено вдало і ви можете почати програмувати. Додам що в основному з установкою і налаштуванням під Лінукс не повинно виникнути особливих проблем, оскільки ставив на десятки машин і поки не спостерігав проблем з цим.
Windows
Тепер почнемо з Windows (з ним вийшло більше візьні).
Нам буде потрібно:
- Ruby 1.8.5 Установник в один клік - назва за себе каже:)
- qtruby4-1.4.9-mswin32.gem - бібліотека qt4 для ruby
- nmake - утиліта автоматичного збирання для Windows (без неї qtruby не встановиться)
Почнемо з того, що встановимо Ruby (при установці повинно також буде встановиться rubygems).
Там же в установці лежатиме SciTe:)
Далі нам треба буде запустити nmake. Він створить два файли - NMAKE.ERR і NMAKE.EXE. Що б rubygems довго його не шукав скопіюйте їх в% RUBY _ DIR %\bin, де% RUBY _ DIR% - директорія куди ви встановили Ruby.
Далі переходимо до командного рядка (Пуск- > Виконати - > cmd). Перевіряємо що gem зареєстрований в системі і працює - пишемо gem --help. Якщо написало допомогу - все добре.
Тепер встановимо qtruby. Переходимо в каталог (в консолі), куди ми завантажили qtruby4-1.4.9-mswin32.gem і пишемо команду gem install qtruby4-1.4.9-mswin32.gem. Встановлення має завершитися вдало так
Якщо написано «помилка буфера» - значить ви завантажили qtruby, який не підходить для вашої системи.
Спочатку я думав що це все, але не тут те було. Знадобилося ще одна бібліотека - mingwm10.dll.
Скачав я її тут і скинув у% RUBY _ DIR %\bin.
Ну а тепер можемо запустити наш додаток і милуватися віконцем з кнопкою.
Вдалого Вам програмування!














