Nasze logo
YahooAltaVistaLycos
Google Netsprint  Hotbot


Szukaj terminu:
Zaczyna się od Zawiera Dokładny wyraz
 
Po wpisaniu nazwy lub pierwszej litery należy wybrać
rodzaj kategorii w której powinien znajdować się szukany plik.
Wpisz wyszukiwane słowo:
Zapraszamy na blogi Chat Forum Słownik Download Filmy Mobil Radio Gry Ekologia Lotnictwo
Na
PromujNewsLetterPartnerzyCzaty/GościePorównania-TestyTłumaczeniaTopXmlHtml4cmsBlogMapaSymantec
skróty
AntySpywareE-mail programySzukaj w SieciProgramowanieBadania InternetoweCSSJava DownloadKatalog DniaekoEnergia
Reklama i pozycjonowanieCMSy i dla webmasterówPodręcznik PHPAccessibility standardCentrum RSSFirewall'eMetaSearchCzasSport
MotoryzacjaWirusy Top RankingStandaryzacjaTweak-Windows-VistaSprzętAntywirusyHacking i BezpieczeństwoBanki/FinanseMedia

Partnerzy:
allegro symantec netsprint
stat mks_vir2k7  
  |   Blogi   |   Konkursy   |   Sondy   |   Blogsfera   |   Avatary Emotikony Ikony   |   Filmy   |  
 

Kompilacja dla początkujących Email
28.01.2007.
Linux kompilacja krok po kroku

Najczęściej spotykane programy na system Linuks są tak zwane binaria- czy zestaw plików do kompilacji.  Aby cieszyć się z takiego programu- trzeba go skompilować. Jest to jeden z najcięższych problemów dla początkujących użytkowników Równie trudnym momentem dla początkujących programistów na Linuksie jest - kompilacja napisanego programu.

Kompilacja Linux

 
Wiele osób myśli, że jest to bardzo trudne i tylko Orły to potrafią. Jesteście w błędzie! Kompilacja napisanego programu jest banalnie prosta i szybka. Zapraszam do zapoznania się z tym artykółem. Każdy krok kompilacji naszego programu jest szczegółowo opisany

1. Pierwszym krokiem jest samo ściągnięcie źródeł.

Najwięcej ich można znaleźć na sourceforge.net. Kiedy już mamy plik ze źródłami a najczęściej ma on postać nazwa_programu.tar.gz skopjujmy go do folderu /usr/src. Być może do zapisu w tym katalogu będą nam potrzebne prawa roota. W tym miejscu najlepiej jest przechowywać żródła programów.
Posiadany przez nas pliki jest archiwum, które przechowuje źródła programu. Należy je rozpakować poleceniem: (możemy również użyć graficznych programów jak ark czy file-roller

tar -xvzf nazwa_programu.tar.gz



Opis przełączników dla tar:
x - oznacza, żeby dany plik został rozpakowany
v - pokaże nam listę plików i szczegóły
z - filtrowanie pakietów przez gzip
f - oznacza, że plik archiwum jest plikiem lokalnym

2. W wyniku powyższych operacji otrzymaliśmy katalog, w którym znajdują się źródła programu, licencjie oraz pliki informujące jak dany program skompilować i zainstalować. Najczęściej jest to plik INSTALL lub README.


Typowa kompilacja rozpoczyna się od wydania polecenia w katalogu ze źródłami:


./configure

Jest to prosty skrypt, który sprawdza nasz system pod względem, czy posiada on potrzebne programy lub biblioteki do skompilowania naszych źródeł. Wygląda on mniej więcej tak:

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no


Bardzo często zdarza się, że configure zatrzyma się w pewnym momencie i pokarze listę błędów, które uniemożliwiają nam skompilowanie programu:

checking for libgnutls-config... no
checking for libgnutls - version >= 1.0.0... no
*** The libgnutls-config script installed by LIBGNUTLS could not be found
*** If LIBGNUTLS was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the LIBGNUTLS_CONFIG environment variable to the
*** full path to libgnutls-config.
configure: WARNING:
***
*** libgnutls was not found. You may want to get it from
*** ftp://ftp.gnutls.org/pub/gnutls/

Jak widać powyżej brakuje nam biblioteki libgnutls w wersji większej lub równej 1.0.0. Configure również pokazało, gdzie należy szukać podanych plików. Po zainstalowaniu biblioteki odpalamy jeszcze raz configure i czytamy rezultaty. Być może teraz znajdzie brak innych plików, więc będzie trzeba je doinstalować. Jeśli wszystko pójdzie dobrze powinniśmy otrzymać komunikat w stylu:

Good - your configure finished. Start make now



3. Kompilacja.

Sama kompilacja ogranicza się do wydania polecenia

make


Rezultatem jego działania jest szereg linijek niezrozumiałego tekstu:

if gcc -DHAVE_CONFIG_H -I. -I. -I.. -DSYSCONFDIR=\"/usr/local/etc\" -DDATADIR=\"/usr/local/share/ekg2\" -DPLUGINDIR=\"/usr/local/lib/ekg2/plugins\" -I../libltdl    -g -O2 -Wall -MT protocol.o -MD -MP -MF ".deps/protocol.Tpo" \
  -c -o protocol.o `test -f 'protocol.c' || echo './'`protocol.c; \
then mv -f ".deps/protocol.Tpo" ".deps/protocol.Po"; \
else rm -f ".deps/protocol.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -DSYSCONFDIR=\"/usr/local/etc\" -DDATADIR=\"/usr/local/share/ekg2\" -DPLUGINDIR=\"/usr/local/lib/ekg2/plugins\" -I../libltdl    -g -O2 -Wall -MT sessions.o -MD -MP -MF ".deps/sessions.Tpo" \
  -c -o sessions.o `test -f 'sessions.c' || echo './'`sessions.c; \
then mv -f ".deps/sessions.Tpo" ".deps/sessions.Po"; \
else rm -f ".deps/sessions.Tpo"; exit 1; \


Z reguły kompilacja kończy się następująco:

make[2]: Nie nic do roboty w `all-am'.
make[2]: Leaving directory `/usr/src/ekg2-20050812'
make[1]: Leaving directory `/usr/src/ekg2-20050812'

Nasz program jest skompilowany. Czas go zainstalować.

4. Instalacja skompilowanych źródeł musi odbywać się z poziomu root dlatego w konsoli wydajemy polecenie su i podajemy hasło administratora. Teraz możemy wydać polecenie:

make install


Teraz system kopiuje odpowiednie pliki binarne do katalogów systemu. Po całej tej operacji wystarczy w konsoli napisać nazwę programu i się on uruchomi.

5. Jeśli program się nam znudzi i chcemy go usunąć to wystarczy wejść do katalogu ze źródłem programu (domyślnie /usr/src/nazwa_programu) i jako root wydajemy polecenie

make uninstall


To jest jedna z przyczyn, dla których warto trzymać źródła w jednym miejscu.

6. Uruchamianie naszego programu

Po każdej kompilacji miło uruchomić swój program :) Aby właśnie spełnić to marzenie wpisujemy:

./nazwa_programu

W tym momencie otwiera się nasz upragniony program :)



---
Michał &  thecamels.org

 
« poprzedni artykuł   następny artykuł »

Mapa pogody

Reklama okularów 0

Prawie jak w niebie :P

Rekordowe domino rekordowe domino

... ile trzeba coś takiego układać :P ?
breakdance by małolat dzicko tanczy braekdance

Dzieciak będzie kiedyś niezły
Chomik sprinter chomik sprinter

To dopiero szybkość
Uzależniona od seksu mandaryna & policjant

Oo lizaczek ... :P
Śmieszne karate Śmieszne karate

Prawie jak mistrz...
...prawie robi wielką różnice
Jak wytłumaczyć dziecku.. skąd się wziełam

... może lepiej by to zrobiła mamusia :P
umbro umbro

Chciał się poczuć jak footbolista.
Crowntown http://sjc-static12.sjc.youtube.com/vi/wvQZSCeCCr8/2.jpg
Ikea Ikea

... troszkę erotycznie :P
Niesforna animacja Niesforna animacja

Uważajcie co na to jak nazywacie swoją animacje.
Fajna wyspa

... ale raczej omijał byś ją z daleka
Jazda w koszu Jazda w koszu

Kosz na śmieci jako pojazd drogowy :P
Fallen art sztuka spadania

Tomasz Bagiński - Sztuka spadania
Erotyczny football sexy footbal

Na taki mecz wybrał by się każdy facet


 


POLECAMY:

Pobierz przeglądarkę: Aktualną wersję Java Inne przydatne programy:

opera
 
GetJava Download Button

PRZYJACIELE:

Bo nie jesteśmy sami w internecie...

hosting

Wspieramy i korzystamy
  |   redakcja   |   partnerzy   |   polityka prywatności   |   zasady korzystania   |   reklama   |   pomoc   |  
© Dzień e-mail - Internauty 2005-08.