Страница 1 из 1

Сборка, установка TCL и Eggdrop

СообщениеДобавлено: 06 июн 2009 18:41
tvrsh
Что нужно для работы с ботами Eggdrop/Windrop? Ну во-первых, необходимо иметь компьютер с операционной системой *nix или Windows у которой есть доступ к IRC-серверу. Не важно какое у вас соединение к IRC-серверу, локально он у вас или он находится где-то в сети Internet. Во-вторых, нам нужен сам робот. Взять его можно в сети Internet.

Адреса, по которым можно найти дистрибутивы ботов Eggdrop/Windrop:
ftp://ftp.eggheads.org/pub/eggdrop/GNU/ Исходные коды всех версий бота включая последнюю beta-версию
http://geteggdrop.com/ Сразу отдает последний релиз бота
http://windrop.sourceforge.net/ Windows версия ботов (WinDrop).

Итак, теперь компилируем Eggdrop-бота:
Для сборки Eggdrop вам обязательно необходим и TCL (язык программирования, который используется в ядре бота). Проверить наличие TCL можно набрав в shell команду:
tclsh
Если вы получите приглашение в виде символа "%", значит TCL есть. Если нет, то установите. Рекомендуемая к установке версия TCL: 8.5.x

Как установить TCL?
Скачать TCL в исходниках можно с с официального сайта: http://tcl.tk/software/tcltk/download.html, либо с нашего архива.
Порядок сборки TCL:


  1. Распакуйте архив с TCL
    tar -zxf tcl8.x.x.tar.gz
  2. Зайдите в директорию с нужной платформой
    cd tcl8.x.x/unix
  3. Наберите
    ./configure
  4. Наберите
    make
  5. Наберите
    make install

И в /usr/local/lib появится libtcl8.x.x.so, в /usr/local/include директория tcl8.x.x, а в /usr/local/bin tcl-shell tclsh.
Однако может наилучший вариант это установить TCL из пакета (rpm, tgz, deb).

А вот Eggdrop лучше собирать самому, так как все зависит от того, как вы хотите потом использовать бота.

Собрать Eggdrop можно в двух видах:
Static - будет занимать меньше, чем eggdrop + dynamic-модули, и будет в одном файле. Таким образом менять версию бота для тестов или проверок намного проще, так как менять надо всего лишь один файл. А также, если ваш бот запускается в одном экземпляре и больше нет никаких других ботов запускающихся из этой же директории, то этот вид сборки тоже будет лучшим вариантом.

Dynamic - будет в виде нескольких файлов (сам eggdrop и модули) и займет чуть больше, из-за заголовков и служебной информации в скомпилированных файлах. Но динамик выигрывает за счет экономии памяти при запуске нескольких ботов. Если запустить несколько ботов, то память будет общей. А также dynamic-модули можно загружать/выгружать на лету.

Последовательность для сборки бота такова:

  1. Скачать бота с сайта или ftp (архив будет с именем eggdrop-1.x.x-tar.gz)
  2. Если не установлен TCL - скачать и поставить (установить можно как из исходников, так и из пакетов tgz, rpm, deb и т.п.)
  3. Распаковать архив с ботом в нужную директорию:
    tar -zxf <имя архива>
  4. Далее обычно хватает команды:
    ./configure

    Но если собирать нужно с конкретной версией TCL, то указывайте:
    ./configure --with-tcllib=/libtcl8x.so --with-tclinc=/tcl.h

    Где "x" нужный номер версии библиотеки.
  5. Для автоматического подключения модулей:
    make config
  6. Для ручного подключения модулей:
    make iconfig
  7. Для сборки бота как dynamic (обычно):
    make

    Для сборки бота как static:
    make static
  8. Для установки:
    make install DEST=/путь/до/папки/куда/ставить/бота

Уточнить процесс установки и настройки, задать любые вопросы касательно ботов eggdrop/windrop и tcl скриптов для них Вы можете на каналах из моей подписи.