Те, кто программировал на Perl под Windows, наверняка знают самый популярный инструмент для этого – ActivePerl. Однако, зачастую его “мощностей” не хватает и приходится брать дополнительные пакеты из ppm (Perl Packet Manager).

Если о таком не знали, наберите в консоли “ppm” – будет интересно.

Однако, и там не всё есть что нам надо… И тогда стоит заглянуть на CPAN.org. Уж там то вы найдёте пакет для любой задачи. Однако, некоторые из них нужно будет скомпилировать под вашу систему. Задача вполне выполнимая, но трудоёмкая.

Именно в такой ситуации я оказался, когда захотел поставить Perl-Gtk2 на свою Windows XP. И, если честно, несколько опешил, ведь под Ubuntu этот пакет ставился одним запросом apt-get… Собирать пакет мне не хотелось, поэтому я решил поискать другие варианты.

Таким вариантом оказался другой дистрибутив Perl’а “Camel Box”.

Чтобы его установить, нужно скачать exe’шник с code.google.com весом ~ 100кб, запустить его. Перед Вами появится окно:

окно camelbox'а

Жмём “Next”, соглашаемся с лицензией (GPL, если кому интересно). Получаем окно выбора пактов, которые нам понадобятся (и которые нужно будет установщику вытянуть из интернета).

camelbox01

После нажатия кнопки “Install” он их успешно скачивает и устанавливает.

окно camelbox'а

Ну и конец установки:

окно camelbox'а

После чего мы можем найти свежеустановленный дистрибутив в папке C:/camelbox (ну или другой диск (какой у вас системный)).

Теперь, чтобы начать использовать его библиотеки,

их надо добавить в массив поиска библиотек. Делается это просто:

BEGIN{
    @INC = (@INC,'C:/camelbox/site/lib');
}

Именно там лежит файл Gtk2.pm. Напоминаю, что содержимое блока BEGIN выполняется до выполнения всего остального кода, поэтому во время вызова use Gtk2 -init; perl уже будет знать, где ему искать.

Ну и в конце – код, которым можно проверить, установился ли у вас Gtk2 или нет:

#!/usr/bin/perl

BEGIN{
    @INC = (@INC,'C:/camelbox/site/lib');
}

use strict;
use warnings;

use encoding 'cp1251';

use Gtk2 -init;

my $window = Gtk2::Window->new('toplevel');
$window->signal_connect( delete_event => sub { Gtk2->main_quit } );

my $button = Gtk2::Button->new('Прощай, Мир!');
$button->signal_connect( clicked => sub {Gtk2->main_quit});

$window->add($button);
$window->show_all();

Gtk2->main();

UPD

Чтобы каждый раз не добавлять в @INC новый путь, можно скопировать C:/camelbox/site/lib в C:/perl/site/lib . Всё равно она по умолчанию пустая стоит…


Популярность: 35%

Похожие записи:
  1. Немного кода Perl-Gtk2
  2. Создание кросс-платформенных графических интерфейсов на Perl/GTK+

Один комментарий на запись “Установка Perl-Gtk2 на Windows с помощью CamelBox’а”

  1. Kristina пишет:

    Хм

Оставить комментарий