Skocz do zawartości

Kompilacja


Tuudi

Rekomendowane odpowiedzi

Panowie mam dość lamerski problem. Mianowicie, wszędzie w FAQ czy innych poradnikach pisze, zeby skompilować program należy wpisać (./install, make etc...). Tyle, ze ja nie mam zielonego pojecia gdzie mam to wpisac i co z tym zrobić.

Rozpoakowałem archiwum w sroku mam w cholere plików ( w tym configure i install) co mam dalej zrobić? Proszę o radę smile.gif

Odnośnik do komentarza
Udostępnij na innych stronach

Faktycznie lamerskie pytanie tongue.gif Spox. Odpalasz sobie terminalik (albo przechodzisz na którąś konsolę). Wchodzisz do katalogu w którym rozpakowałeś źródełka i klepiesz

 

./configure

 

To polecenie sprawdza czy masz wszystkie zależności jakich wymaga ten pakiet i dostosowuje go do twojego systemu. Jeśli okaże się że masz wszystkie zależności (co się (_żadko_ → rzadko) ORT zdaża - zwykle czegoś się nie ma i trzeba doinstalować, stąd się wzięły systemy zażądzania zależnościami takie jak yum w fedorze i emerge w gentoo) to klepiesz

make

 

a jak się make skończy to

 

make install

 

i już. w pliku INSTALL w katalogu z rozpakowanymi źródłami jest opis instalacji.

 

Oczywiście to wszystko najlepiej robić z roota

 

Ale tak swoją drogą to co ty chcesz instalować z source'ów pod Fedorą? Lepiej poszukać rpm'ów (no chyba że nie ma). Choć oczywiście umiejętność kompilacji programów się przydaje.

Odnośnik do komentarza
Udostępnij na innych stronach

rozpokowałeś jakieś archiwum do katalogu powiedzmy arch

wchodzisz do katalogu tego

cd arch

jak juz w nim jesteś piszesz su -l

podajesz hasło dla roota

dalej piszesz ./configure

po tym make i na końcu instalacja czyli piszesz make install

Odnośnik do komentarza
Udostępnij na innych stronach

Czegos nie rozumiem. W konsoli musze chyba podać lokalizacje folderu? Czy jak?

Możesz ją podać, a możesz także być w tym folderze i wykonać powyższe polecenia.

Polecenia

./configure, make

wykonuje się z konta zwykłego usera, a polecenie

make install 

z konta roota(su -).

Odnośnik do komentarza
Udostępnij na innych stronach

Kurde. Nie ma wała.

Wpisuje

[root@xxx ~]# cd xxy
bash: cd: xyzNie ma takiego pliku ani katalogu

ps. xyz to jest przykład tongue.gif

/edit 1

Ps. Już mam smile.gif dzięki

 

edit 2

 

Teraz mam taki problem

[root@hostko dsniff-2.3]# ./configure
creating cache ./config.cache
checking for gcc... no
checking for cc... no
configure: error: no acceptable cc found in $PATH

Jakieś propozycje ? smile.gif

Odnośnik do komentarza
Udostępnij na innych stronach

Mogłeś przy instalacji systemu dać całą sekcję programowanie bez KDE, GNOME, MONO i X. Wtedy byś mógł prawie wszystkie programy tekstowe skompilować ...

Jeszcze jedno, nie mogę pojąć po co ludzie kompilują coś. Fedora Extras, Livna, Freshrpms są tak obszerne, że nie widzę sensu kompilacji czegokolwiek do systemu, tym bardziej jeśli się nie zna na systemie i programowaniu.

Odnośnik do komentarza
Udostępnij na innych stronach

Ściagnołem gcc i cos poszło dalej... biggrin.gif (Dzięki Wam za to)

 

Ale teraz coś nowego na końcu:

checking for Berkeley DB with 1.85 compatibility... configure: error: Berkeley DB with 1.85 compatibility not found

Co tym razem powinienam zassać ?

 

edit/

Spoko juz scigam DB smile.gif

Odnośnik do komentarza
Udostępnij na innych stronach

Osobiscie nie polecam kompilowania a tym samym instalowania oprogramowania z poziomu uzytkownika root.

 

Zakladasz sobie w swoim katalogu domowym folder np:

 

mkdir src

 

Nastepnie rozpakowujesz tam zrodla i czytasz README, INSTALL (ktorego zawartosc jest generowana automatycznie w wiekszosci przypadkow)

 

nastepnie:

 

./configure --prefix=${HOME} (tym samym ustalasz katalog nadrzedny dla instalowanego programu (jego pliku wykonywalnego, wygenerowanych bibliotek i innych danych).

 

make

make install (w tym wypadku nie potrzebujesz juz konta root)

 

Wiaze sie z tym jednak pewniem problem. A mianowicie moze sie zdarzyc, iż podczas uruchamiania programu program nie bedzie w stanie odnalezc wymaganych bibliotek.

Wowczas najlepszym i jedynym rozwiazaniem jest dopisanie do np: .bashrc takich inf.

 

sciezka do bibliotek

export LD_LIBRARY_PATH="${HOME}/bin:$LD_LIBRARY_PATH"

tutaj domyslnie zostanie zainstalowana binarka i dzieki temu uruchomisz ja normalnie z powloki, bez koniecznosci podawania pelnej sciezkei (lub np: w Gnome po wybraniu ALT [F2])

export PATH="${HOME}/bin:$PATH"  

 

dla podrecznikow man

export MANPATH="${HOME}/share/man:$MANPATH"

 

Kiedy juz tak koniecznie musisz cos budowac ze zrodel, to moze rowniez warto zainteresowac sie pakietami SRPM, tam poszukac plikow .spec i ... - ale to juz temat na inna rozmowe smile.gif

 

Warto jeszcze zapoznac sie tym artykulem:

http://www.linuxfocus.org/Polish/December2...rticle360.shtml

 

Odnośnik do komentarza
Udostępnij na innych stronach

Do prawidłoewgo działania programu sa jest potrzebny Berkeley DB.

[root@hostko630user108q30555 ~]# yum install Berkeley DB
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
livna                                                                [1/5]
livna                     100% |=========================|  951 B    00:00
updates                                                              [2/5]
updates                   100% |=========================|  951 B    00:00
core                                                                 [3/5]
core                      100% |=========================| 1.1 kB    00:00
macromedia                                                           [4/5]
macromedia                100% |=========================|  951 B    00:00
extras                                                               [5/5]
extras                    100% |=========================| 1.1 kB    00:00
Reading repository metadata in from local files
primary.xml.gz            100% |=========================| 102 kB    00:03
updates   : ################################################## 343/343
Added 7 new packages, deleted 0 old in 0.74 seconds
primary.xml.gz            100% |=========================| 870 kB    00:30
extras    : ################################################## 2428/2428
Added 35 new packages, deleted 15 old in 4.59 seconds
Parsing package install arguments
No Match for argument: Berkeley
No Match for argument: DB
Nothing to do

 

I tez sciglem arviwum z neta

[root@hostko630user108q30555 db-4.4.20]# dist/configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking if building in the top-level or dist directories... yes
configure: error: Berkeley DB should not be built in the top-level or dist directories.

Jakiś pomysl jak to zainstalować ?

Odnośnik do komentarza
Udostępnij na innych stronach

Do prawidłoewgo działania programu sa jest potrzebny Berkeley DB.

[root@hostko630user108q30555 ~]# yum install Berkeley DB
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
livna                                                                [1/5]
livna                     100% |=========================|  951 B    00:00
updates                                                              [2/5]
updates                   100% |=========================|  951 B    00:00
core                                                                 [3/5]
core                      100% |=========================| 1.1 kB    00:00
macromedia                                                           [4/5]
macromedia                100% |=========================|  951 B    00:00
extras                                                               [5/5]
extras                    100% |=========================| 1.1 kB    00:00
Reading repository metadata in from local files
primary.xml.gz            100% |=========================| 102 kB    00:03
updates   : ################################################## 343/343
Added 7 new packages, deleted 0 old in 0.74 seconds
primary.xml.gz            100% |=========================| 870 kB    00:30
extras    : ################################################## 2428/2428
Added 35 new packages, deleted 15 old in 4.59 seconds
Parsing package install arguments
No Match for argument: Berkeley
No Match for argument: DB
Nothing to do

Jakiś pomysl jak to zainstalować ?

# yum install db4

Odnośnik do komentarza
Udostępnij na innych stronach

Jest repo z pakietami z Java, ale niestety nie dla FC5 (powinno dzialac).

http://www.jpackage.org/rpm.php?id=3366

 

To jest repo non-free - w tym wypadku nie obejdzie sie bez sciagniecia pakietu javy ze strony Sun`a (jaki pakiet masz sciagnac dowiesz sie z pliku java-1.5.*.spec juz po wykonaniu srodowiska i zaistalowaniu java-1.5.0-sun-1.5.0.06-1jpp.nosrc.rpm).

Instalacja nosrc.rpm i budowa Javy odbiedzie sie w Twoim katalogu domowym - konta root uzyjesz jedynie do zaistalowania juz zbudowanego finalnego pakietu RPM:

 

Opis stworzenia srodowiska do budowania pakietow SRPM masz tutaj:

http://www.jpackage.org/rebuilding.php

 

Powodzenia smile.gif

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...