• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

docs/H03-May-2022-1,8931,485

examples/H03-May-2022-801522

include/H03-May-2022-5,0973,341

m4/H21-Jan-2017-581503

pkgconfig/H03-May-2022-1713

src/H03-May-2022-23,19715,237

test/H03-May-2022-10,2867,192

.gitignoreH A D21-Jan-20171 KiB6867

AUTHORSH A D21-Jan-20171.7 KiB4641

COPYINGH A D21-Jan-201725.8 KiB505418

ChangeLogH A D21-Jan-2017171 64

Makefile.amH A D03-May-2022326 1610

NEWSH A D21-Jan-201779 21

READMEH A D21-Jan-20173.6 KiB7458

autoclean.shH A D21-Jan-2017658 4441

autogen.shH A D21-Jan-2017357 1510

configure.acH A D21-Jan-201713.8 KiB507408

declspec.shH A D21-Jan-2017343 94

packets.protoH A D21-Jan-20175.5 KiB245219

protobufgen.shH A D21-Jan-20171.5 KiB5038

README

1libgadu 1.12.2
2(C) Copyright 2001-2014 Autorzy (pełna lista w pliku AUTHORS)
3
4libgadu jest biblioteką przeznaczoną do obsługi protokołu komunikatora
5Gadu-Gadu. Przez dłuższy czas była integralną częścią Eksperymentalnego
6Klienta Gadu-Gadu, lecz ze względu na problemy z dystrybucją pakietów
7i wykorzystaniem w innych projektach, została wydzielona. Własnościowy
8protokół został rozszyfrowany metodą inżynierii wstecznej (ang. "reverse
9engineering"), przez co libgadu może nie być w 100% zgodna
10z pierwowzorem.
11
12Biblioteka jest udostępniana na zasadach licencji LGPL w wersji 2.1,
13której treść znajduje się w pliku COPYING. Biblioteka została napisana
14w języku C i jest niezależna od systemu operacyjnego czy środowiska.
15Pracuje pod systemami operacyjnymi zgodnymi z POSIX, również BeOS
16i Win32. Używana jest w aplikacjach konsolowych, jak i graficznych GTK+ i Qt.
17
18Strona projektu znajduje się pod adresem http://libgadu.net/.
19Osoby zainteresowane biblioteką mogą zapisać się na listę dyskusyjną
20libgadu-devel poświęconą rozwojowi biblioteki, programowaniu przy jej
21użyciu oraz protokołowi Gadu-Gadu. Istnieje również lista
22libgadu-commit, na którą są wysyłane informacje o zmianach w kodzie
23źródłowym. Informacje o listach dyskusyjnych można uzyskać na stronach:
24
25 - http://lists.ziew.org/mailman/listinfo/libgadu-devel
26
27 - http://lists.ziew.org/mailman/listinfo/libgadu-commit
28
29Ostrzeżenie: Należy pamiętać, że używanie alternatywnych klientów jest
30niezgodne z regulaminem korzystania z serwisu Gadu-Gadu.
31
32Wymagania
33---------
34
35Do połączeń szyfrowanych biblioteka wykorzystuje bibliotekę GnuTLS lub
36OpenSSL. Domyślnie OpenSSL nie jest wykorzystywany, nawet jeżeli jest
37zainstalowany w systemie - oprogramowanie zlinkowane z tą biblioteką nie jest
38kompatybilne z GPL, co powoduje problemy z łączeniem z programami na tej
39licencji. Aby mimo wszystko skompilować libgadu z obsługą OpenSSL, należy
40użyć przełącznika --with-openssl. Tak skompilowana wersja będzie tylko
41częściowo binarnie kompatybilna z wersją standardową: brakuje w niej symbolu
42gg_is_gpl_compliant, którego mogą używać aplikacje wymagające takiej
43licencji. Minimalna wymagana wersja biblioteki OpenSSL to 0.9.7, a biblioteki
44GnuTLS 2.10.0. Przy użyciu OpenSSL lub GnuTLS w wersji niższej niż 3.0 nie
45jest sprawdzana lista unieważnionych certyfikatów.
46
47Do przechowywania listy kontaktów na serwerze niezbędna jest biblioteka
48zlib.
49
50Do wygenerowania dokumentacji używany jest Doxygen. Jeśli nie jest
51dostępny, dokumentacja nie jest generowana.
52
53Do niektórych testów automatycznych wymagane są glibc, GnuTLS, libxml2
54i Perl. Jeśli nie są dostępne, niektóre testy nie będą uruchamiane.
55Ponadto jeden z programów do ręcznego testowania biblioteki wymaga
56bibliotek CURL, Expat i OpenSSL.
57
58Kompilator musi obsługiwać 64-bitowe zmienne typu long long.
59
60Podczas kompilacji wykrywana jest wersja biblioteki standardowej,
61ponieważ zachowanie używanych funkcji rodziny printf() zostało
62zmienione w ISO C99. Podczas kompilacji skrośnej nie jest możliwe
63automatyczne określenie wersji biblioteki na systemie docelowym, więc
64niezbędne jest użycie parametru --with- lub --without-c99-vsnprintf.
65Większość współczesnych systemów operacyjnych zawiera bibliotekę
66standardową zgodną ze standardem C99, więc w przypadku wątpliwości
67można użyć --with-c99-vsnprintf.
68
69Do asynchronicznego rozwiązywania nazw biblioteka używa procesów
70lub wątków pthread. Jeśli system udostępnia funkcję gethostbyname_r()
71działającą poprawnie w aplikacjach wielowątkowych (Linux z glibc,
72SunOS), zostanie ona użyta.
73
74