Qt + Ruby = параметри Linux і Windows

Привіт всій спільноті. Сьогодні напишу як налаштувати прив'язку 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.

Ну а тепер можемо запустити наш додаток і милуватися віконцем з кнопкою.

Вдалого Вам програмування!

logo