Skip to content

porridge/libgadu

Repository files navigation

libgadu 1.12.0-pre
(C) Copyright 2001-2011 Autorzy (pełna lista w pliku AUTHORS)

libgadu jest biblioteką przeznaczoną do obsługi protokołu komunikatora
Gadu-Gadu. Przez dłuższy czas była integralną częścią Eksperymentalnego
Klienta Gadu-Gadu, lecz ze względu na problemy z dystrybucją pakietów
i wykorzystaniem w innych projektach, została wydzielona. Własnościowy
protokół został rozszyfrowany metodą inżynierii wstecznej (ang. "reverse
engineering"), przez co libgadu może nie być w 100% zgodna
z pierwowzorem.

Biblioteka jest udostępniana na zasadach licencji LGPL w wersji 2.1,
której treść znajduje się w pliku COPYING. Biblioteka została napisana
w języku C i jest niezależna od systemu operacyjnego czy środowiska.
Pracuje pod systemami operacyjnymi zgodnymi z POSIX, również BeOS
i Win32, choć ten ostatni nie jest wspierany ze względu na istnienie
oficjalnego klienta Gadu-Gadu. Używana jest w aplikacjach konsolowych,
jak i graficznych GTK+ i Qt.

Strona projektu znajduje się pod adresem http://toxygen.net/libgadu/.
Osoby zainteresowane biblioteką mogą zapisać się na listę dyskusyjną
libgadu-devel poświęconą rozwojowi biblioteki, programowaniu przy jej
użyciu oraz protokołowi Gadu-Gadu. Istnieje również lista
libgadu-commit, na którą są wysyłane informacje o zmianach w kodzie
źródłowym. Informacje o listach dyskusyjnych można uzyskać na stronach:

 - http://lists.ziew.org/mailman/listinfo/libgadu-devel

 - http://lists.ziew.org/mailman/listinfo/libgadu-commit

Ostrzeżenie: Należy pamiętać, że używanie alternatywnych klientów jest
niezgodne z regulaminem korzystania z serwisu Gadu-Gadu.

Wymagania
---------

Do połączeń szyfrowanych biblioteka wykorzystuje bibliotekę GnuTLS lub
OpenSSL. Jeśli obie są zainstalowane w systemie, pierwszeństwo ma ta
pierwsza, ponieważ użycie OpenSSL może powodować problemy z łączeniem
z programami na licencji GPL. Minimalna wymagana wersja biblioteki
OpenSSL to 0.9.7, a biblioteki GnuTLS 2.10.0.

Do poprawnej obsługi połączeń bezpośrednich starszych wersji protokołu
niezbędny jest kompilator obsługujący 64-bitowy typ long long.

Do przechowywania listy kontaktów na serwerze niezbędna jest biblioteka
zlib.

Do wygenerowania dokumentacji używany jest Doxygen. Jeśli nie jest 
dostępny, dokumentacja nie jest generowana.

Do niektórych testów automatycznych wymagane są glibc, GnuTLS, libxml2
i Perl. Jeśli nie są dostępne, niektóre testy nie będą uruchamiane.
Ponadto jeden z programów do ręcznego testowania biblioteki wymaga
bibliotek CURL, Expat i OpenSSL.

Podczas kompilacji wykrywana jest wersja biblioteki standardowej,
ponieważ zachowanie używanych funkcji rodziny printf() zostało
zmienione w ISO C99. Podczas kompilacji skrośnej nie jest możliwe
automatyczne określenie wersji biblioteki na systemie docelowym, więc
niezbędne jest użycie parametru --with- lub --without-c99-vsnprintf.
Większość współczesnych systemów operacyjnych zawiera bibliotekę
standardową zgodną ze standardem C99, więc w przypadku wątpliwości
można użyć --with-c99-vsnprintf.

Do asynchronicznego rozwiązywania nazw biblioteka używa procesów
lub wątków pthread. Jeśli system udostępnia funkcję gethostbyname_r()
działającą poprawnie w aplikacjach wielowątkowych (Linux z glibc,
SunOS), zostanie ona użyta.

About

Debian libgadu package maintenance (git-svn import of upstream).

Resources

License

Stars

Watchers

Forks

Packages

No packages published