Pokaż wyniki 1 do 6 z 6

Temat: Biblioteki międzyplatformowe

  1. #1
    Zarejestrowany
    Dec 2009
    Postów
    34

    Domyślnie Biblioteki międzyplatformowe

    Witam, zaczynam programowanie w c++, ale już na wstępie chciałbym zapytać które z bibliotek standardowych (plików nagłówkowych) można używać tak by źródła były kompilowalne na różnych systemach, przede wszystkim unix/linux i dos/windows.

    Spotkałem się np. z plikiem nagłówkowym windows.h, który nie jest kompilowalny na systemach unix, czy linux, a słyszałem, że jest ich więcej.

  2. #2
    Zarejestrowany
    Nov 2009
    Postów
    643

    Domyślnie

    Jeżeli zależy Ci na międzyplatformowej przenośności programów,
    to porzuć C i weź się za jakiegoś skryptowca.

    Ale odpowiadając na Twoje pytanie:
    Nie wiem.
    światło mądrości oświetla drogę z nikąd do nikąd

  3. #3
    Avatar rafal44
    rafal44 jest offline logout
    Zarejestrowany
    Dec 2007
    Postów
    291

    Domyślnie

    To co działa na Linuksie może działać na Windowsie. To co działa na Windowsie nie będzie działać na Linuksie. Więc najlepiej korzystać z wolnych bibliotek.
    I tak:
    programy GUI: do tego najlepiej nadaje się GTK+ lub QT
    dzwięk: GStreamer
    grafika: OpenGL
    biblioteka do tworzenia gier: Allegro
    Implementacja wielowątkowości pthreads
    Biblioteki systemowe: Boost.

    Windows nie daje możliwości pisania programów na różne platformy. Pozatym windows.h nie jest plikiem biblioteki standardowej C.
    Ostatnio edytowane przez rafal44 : 01-06-2010 - 15:26
    "a imię jego będzie czterdzieści i cztery"
    A. Mickiewicz Dziady cz. III

  4. #4
    Zarejestrowany
    Aug 2009
    Postów
    408

    Domyślnie

    kiedys przejzalem wszystko co wieloplatformowe (no dobra nie wszystko) i mowie ze to syf.

    piszesz albo pod windowsa, albo pod co innego. nawet nie ma bibliotek zeby pod kazdym linuxem/bsd/... dzialalo, a ty chcesz mieszac w to windows ktory jest duzo inny.

  5. #5
    Avatar rafal44
    rafal44 jest offline logout
    Zarejestrowany
    Dec 2007
    Postów
    291

    Domyślnie

    OK zgadzam się, nie da się napisać rozbudowanego programu który będzie kompilował się i działał pod wieloma platformami. Potrzebna jest jakaś edycja kodu.
    Ale aby programować pod Windowsem i Linuksem jednocześnie można używać jednej biblioteki i pamiętać o różnicach na tych systemach - wiedza, a nie niechęć do edycji kodu. Trzeba używać jakiś bibliotek, chyba, że chcesz pisać od zera tak jak pisany jest Linuks. Ja sam używam GTK+ i programuje mi się bardzo dobrze.
    WinAPI - prawie wszystko w jednym pliku, bardzo dobra dokumentacja i przykłady, ale działa tylko pod Win.
    Biblioteki Linuksa - GTK+ GStreamer słaba dokumentacja, poza tym do innych rzeczy trzeba szukać innych bibliotek, ale korzystać z tych bibliotek możemy pod Win inne.
    Zatem:
    WinAPI nie stworzymy aplikacji wieloplatformowej (chyba że ktoś uznaje tylko Win)
    GNU spokojnie możemy korzystać z tych bibliotek pod innymi platformami.
    "a imię jego będzie czterdzieści i cztery"
    A. Mickiewicz Dziady cz. III

  6. #6
    Zarejestrowany
    Dec 2009
    Postów
    164

    Domyślnie

    Windows nie daje możliwości pisania programów na różne platformy. Pozatym windows.h nie jest plikiem biblioteki standardowej C.
    no i tu sie w pewnym stopniu mylisz, co z dyrektywami ?
    Kod:
     #ifdef WIN32
    // jakis kod
    czy

    Kod:
    #ifndef WIN32
    // jakis kod
    dzieki dyrektywom mozna pisac pod rozne platformy, no przynajmniej w jakims stopniu.

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj