Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Jak działa ebuild?
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish)
View previous topic :: View next topic  
Author Message
RA6
n00b
n00b


Joined: 13 Mar 2007
Posts: 53
Location: Polonia - Vladislavia

PostPosted: Sun Apr 06, 2014 5:36 pm    Post subject: Jak działa ebuild? Reply with quote

Wiem jak korzystać z deklaracji od nagłówka po zależności. Nie rozumiem funkcji w ebuilidach i jak działają. Wstyd się przyznać, że nie znam bash'a więc i mam problemy z ogarnięciem podstaw działania każdego etapu. Słaba znajomość angielskiego powodują, że Gentoo Development Guide mi za dużo nie pomaga a Ebuild Howto opisuje tylko ogólne elementy. Proszę o przykładowy kod trzech operacji:

    1. przejście do katalogu /nazwaprogramu/src
    2. wykonanie tam polecenia make bez wykonania wcześniej ./configure
    3. wykonanie instalacji pakietu


może być nawet gotowy przykład z portage bym mógł go postudiować.
_________________
Desktop: [COMPAQ EVO W6000] [2xP4 Xeon 2GHz][GF6200LE 128DDR2] [2.6.29-gentoo-sources]
Desktop: [Fujitsu Siemens CELSIUS R630] [2xP4 Xeon 3,2GHz][Quadro FX 380] [2.9.0-gentoo-sources]
Back to top
View user's profile Send private message
sebas86
Guru
Guru


Joined: 01 May 2005
Posts: 568
Location: Szczecinek / Szczecin

PostPosted: Sun Apr 06, 2014 6:29 pm    Post subject: Reply with quote

Bez znajomości angielskiego to trochę bez sensu. Chociażby z tego względu, że narzędzie ebuild jest cały czas rozwijane, kiedyś sam robiłem ebuildy, a teraz musiałbym na nowo usiąść do dokumentacji żeby cokolwiek sensownego zrobić bo się trochę rzeczy pozmieniało. Poza tym jak bez języka chcesz reagować na problemy, które prawie na pewno będą się pojawiać podczas budowania ze źródeł?

1, 2, 3 da się to zrobić na kilka różnych sposobów. Jeśli paczka jest w miarę ustandaryzowana (zdaje się, że wystarczy, że w głównym katalogu będą pliki automake) to praktycznie nic nie trzeba pisać, dodajesz ścieżki do źródeł, zależności i już, powinno po prostu działać.
_________________
Nieważne jaka dystrybucja, ważne, że Linux!
Back to top
View user's profile Send private message
RA6
n00b
n00b


Joined: 13 Mar 2007
Posts: 53
Location: Polonia - Vladislavia

PostPosted: Mon Apr 07, 2014 3:44 am    Post subject: Reply with quote

Często stosuję niszowe biblioteki i rozszerzenia, które dopiero ktoś za kilka miesięcy przeportuje. Rozumiem to co czytam na tyle, że potrafię napisać potrzebne ebuilidy, to też rozwiążę, ale mi to zajmie więcej czasu niż mam. Obecnie posiłkuję się wirtualną maszyną z debianem.

Paczka w głównym katalogu nie trzyma plików automake tylko w /src. Nie ma potrzeby by coś zmieniać bo z palca wszystko się kompiluje. Lubię mieć porządek, więc piszę pod siebie i zmieniam istniejące ebuilidy. Przesadziłem z nie rozumieniem angielskiego i bash, podstawy jakieś mam tylko źle mi się myśli jak coś rozumiem tylko w małym procencie bo nie mam czasu go poświęcić na naukę i ćwiczenia. Jak tą część opracuję zostanie mi powiązanie bibliotek.

Żebym wiedział czego szukam to bym po ebulidach z portage to zrobił, ale nie wiem która funkcja omija fazę ./configure i pracuje w katalogu /src wykonując make na plikach tego katalogu. Do tej pory sypie się na ścieżce dostępu czyli:
- zadeklarowałem katalog roboczy:
S="${WORKDIR}/${MY_PN}"
- następnie skorzystałem z funkcji src_compile() która mi się wydaje logiczna dla tego problemu
src_compile() {
cd "${S}/src" && make || die "make failed"
_________________
Desktop: [COMPAQ EVO W6000] [2xP4 Xeon 2GHz][GF6200LE 128DDR2] [2.6.29-gentoo-sources]
Desktop: [Fujitsu Siemens CELSIUS R630] [2xP4 Xeon 3,2GHz][Quadro FX 380] [2.9.0-gentoo-sources]
Back to top
View user's profile Send private message
lazy_bum
l33t
l33t


Joined: 16 Feb 2005
Posts: 691

PostPosted: Mon Apr 07, 2014 8:01 pm    Post subject: Reply with quote

http://devmanual.gentoo.org/ebuild-writing/index.html

Warto też sprawdzić czy ktoś już nie napisał ebuilda do tego czego potrzebujesz (eix-remote albo http://gpo.zugaina.org/) oraz „posiłkować się” innymi ebuildami.
_________________
roslin uberlay | grubelek
Back to top
View user's profile Send private message
dziadu
Guru
Guru


Joined: 04 May 2006
Posts: 463
Location: Kraków/Darmstadt/Munich

PostPosted: Sun Apr 20, 2014 9:41 am    Post subject: Reply with quote

Tak jak lazy_bum Ci podał adres strony, znajdziesz tam funkcję src_configure(), która m.in. uruchamia skrypt configure (albo cmake, albo coś innego, zależy które eclass włączysz w ebuild). Możesz ją przedefiniować, ale pamiętaj, że nie można zdefiniować pustej funkcji, czyli, musisz coś tam wrzucić, np.:

Code:

src_configure() {
    einfo "Skipping configure script"
}


Możesz wrzucić kod ebuildu, to rzucę okiem co tam masz, może coś podpowiem więcej.

Pzdr.
dziadu
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum