Originally Posted by
Pasechnick
Подскажите, пожалуйста, что не так.
Все, абсолютно все не так. Нужно уметь читать логи Представляю вашему вниманию пошаговую инструкцию по сборке jabberd2.
На 100%ю правильность не претендую, возможно, все можно сделать проще/иначе.
Ну и главное - это все - на ваш страх и риск.
0) Делаем БОЛЬШОЙ своп. Мегабайт так двести-четыреста
1) Идем на http://jabberd2.xiaoka.com/ и скачиваем последнюю версию исходников (у меня было jabberd-2.1.23.tar.bz2)
2) Идем на ftp://alpha.gnu.org/gnu/fetish и сливаем оттуда последнюю версию fileutils (у меня было fileutils-4.1.11.tar.gz)
3) Создаем на роутере директорию и распаковываем в нее содержимое архива jabberd2
4) Туда же копируем один-единственнный файлик fnmatch_.h из архива fileutils
5) Устанавливаем нужные пакеты через ipkg. Я просто приведу список установленных у меня пакетов, т.к.
не помню, что именно ставил (доустанавливал то, чего не хватало конфигуру). Примечание. buildroot и findutils надо устанавливать с ключом --force-overwrite
Code:
[tinde@t-router jabberd-2.1.23]$ ipkg list_installed|more
adduser - 1.9.0-1 - a multi-call binary for login and user account administration
apr - 1.2.11-1 - Apache Portable Runtime library
apr-util - 1.2.10-4 - Apache Portable Runtime utilities library
autoconf - 2.61-2 - Creating scripts to configure source code packages using templates
automake - 1.10-2 - Creates GNU standards-compliant Makefiles from template files
bash - 3.2.17-1 - A bourne style shell
bison - 2.3-2 - a general-purpose parser generator that converts an annotated context-free grammar into an LALR(1) or GLR parser for that gramm
buildroot - 4.1.1-13 - uClibc compilation toolchain
bzip2 - 1.0.4-2 - Very high-quality data compression program
coreutils - 6.9-6 - Bunch of heavyweight *nix core utilities
cron - 4.1-7 - Standard vixie cron, with cron.d addition
cyrus-sasl-libs - 2.1.22-2 - Provides client or server side authentication (see RFC 2222).
diffutils - 2.8.1-6 - contains gnu diff, cmp, sdiff and diff3 to display differences between and among text files
e2fsprogs - 1.40.3-1 - Ext2 Filesystem Utilities
expat - 2.0.1-1 - XML Parser library
file - 4.21-1 - Ubiquitous file identification utility.
findutils - 4.2.31-3 - File finding utilities
flex - 2.5.34-1 - Generates programs that perform pattern-matching on text.
fontconfig - 2.5.0-0 - Font configuration library
freetype - 2.1.10-4 - Free truetype library
gawk - 3.1.6-1 - Gnu AWK interpreter
gconv-modules - 2.2.5-7 - Provides gconv modules missing from the firmware. These are used by glibc's iconv() implementation.
gdbm - 1.8.3-2 - GNU dbm is a set of database routines that use extensible hashing. It works similar to the standard UNIX dbm routines.
glib - 2.9.6-1 - The GLib library of C routines.
gnuplot - 4.2.2-2 - Command-line driven interactive data and function plotting utility
grep - 2.4.2-8 - Global regular expression parser
groff - 1.19.2-2 - front-end for the groff document formatting system
gzip - 1.2.4a-3 - GNU Zip data compression program
htop - 0.6.6-2 - An interactive process viewer.
inetutils - 1.5-4 - A set of common daemons and clients found on commercial UNIX systems.
ipkg-opt - 0.99.163-9 - The Itsy Package Manager
less - 418-1 - Less file browser
libbt - 1.05-5 - a C library implementing the core BitTorrent protocol
libcurl - 7.18.0-1 - Curl is a command line tool for transferring files with URL syntax, supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FI
libdb - 4.2.52-3 - Berkeley DB Libraries
libgd - 2.0.35-1 - An ANSI C library for the dynamic creation of images
libgsasl - 0.2.20-1 - GNU SASL command line utility.
libidn - 1.0-1 - GNU Libidn is an implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domai
libjpeg - 6b-2 - collection of jpeg tools
libpng - 1.2.24-1 - Portable Network Graphics Libraries
libtool - 1.5.24-1 - Library tools.
libuclibc++ - 0.2.2-4 - C++ standard library designed for use in embedded systems
libxml2 - 2.6.31-1 - Libxml2 is the XML C parser and toolkit developed for the Gnome project.
libxslt - 1.1.22-1 - An XML Stylesheet processor based on libxml2
lighttpd - 1.4.18-1 - A fast webserver with minimal memory footprint.
logrotate - 3.7.1-4 - Rotates, compresses, removes and mails system log files.
lsof - 4.78-1 - LiSt Open Files - a diagnostic tool.
lynx - 2.8.6-1 - A text browser for the World Wide Web
m4 - 1.4.8-1 - gnu macro processor and compiler front end
make - 3.81-1 - examines files and runs commands necessary for compilation
mc - 4.6.1-8 -
microperl - 5.8.8-11 - Microperl.
ncurses - 5.6-3 - NCurses libraries
ncursesw - 5.6-1 - NCurses libraries with wide char support.
neon - 0.24.7-2 - an HTTP and WebDAV client library, with a C interface
openldap-libs - 2.3.38-1 - Open Lightweight Directory Access Protocol
openssl - 0.9.7m-3 - Openssl provides the ssl implementation in libraries libcrypto and libssl, and is needed by many other applications and librari
openssl-dev - 0.9.7m-3 - openssl native development files
optware-devel - 6.8-7 - This is a meta package that bundles all the packages required for optware native development.
patch - 2.5.9-3 - applies a diff to produce a patched file
pcre - 7.6-1 - Perl-compatible regular expression library
perl - 5.8.8-17 - Practical Extraction and Report Language.
php - 5.2.5-1 - The php scripting language
php-fcgi - 5.2.5-1 - The php scripting language, built as an fcgi module
php-gd - 5.2.5-1 - libgd extension for php
pkgconfig - 0.15.0-1 - Package configuration tool
popt - 1.7-2 - A C library for parsing command line parameters.
python - 2.4.4-3 - This is a package that sets up the default python.
python24 - 2.4.4-6 - Python is an interpreted, interactive, object-oriented programming language.
readline - 5.2-2 - The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are
rsync - 2.6.9-4 - fast remote file copy program (like rcp)
screen - 4.0.3-2 - A screen manager that supports multiple logins on single terminal
sed - 4.1.5-3 - Stream editor.
slang - 2.1.2-1 - S-Lang is a multi-platform library designed to allow a developer to create robust multi-platform software.
sqlite - 3.5.4-1 - SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine.
svn - 1.4.6-1 - a compelling replacement for CVS
tar - 1.18-3 - heavyweight version of the Tape ARchiver
termcap - 1.3.1-2 - Terminal emulation library
textutils - 2.1-5 - GNU Text Utilities
transmission - 1.03+r4868-1 - lightweight BitTorrent client and daemon with WWW interface
uclibc-opt - 0.9.28-13 - micro C library for embedded Linux systems
unzip - 5.52-3 - A (de)compression library for the ZIP format
wget-ssl - 1.11-1 - A network utility to retrieve files from the Web
whois - 4.7.22-1 - Perform whois lookups to identify site owners
zlib - 1.2.3-2 - zlib is a library implementing the 'deflate' compression system.
Successfully terminated.
6) Закомментариваем строчку
Code:
#include_next <stdint.h>
в файле /opt/include/idn-int.h
7) Запускаем ./configure -C (-C позволяет кешировать результаты выполнения конфигура, что очень ценно для медленного роутера в случае возникновения проблем)
8) Идем в файлик router/filter.c и ПЕРЕД
Code:
for(acl = r->filter; acl != NULL; acl = acl->next) {
if( from == NULL && acl->from != NULL) continue; /* no match if NULL matched vs not-NULL */
(это в конце файла) ставим #undef fnmatch
9) Запускаем make
10) Ждем часок
11) Получаем бинарник
P.S. Все получено в результате вдумчивого чтения сообщений gcc и копания в хидерах
P.P.S. Делалось исключительно из спортивного интереса, вопросов по джабберду прошу не задавать (опенфайр рулит, да)