Giter VIP home page Giter VIP logo

libgadu's Introduction

libgadu 1.12.0-pre
(C) Copyright 2001-2013 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 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.

Kompilator musi obsługiwać 64-bitowe zmienne typu long long.

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.

libgadu's People

Contributors

twasilczyk avatar wojtekka avatar mpapierski avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.