Temat: katalog z bibiotekami do kompilacja

Cześć
czy może mi ktoś wyjaśnić:

jeżeli kompiluje swoją paczkę i chciałbym używać  biblioteki  libncurses to w zasadzie gdzie w drzewie katalogów powinna się ona znajdować w SDK ?

2 (edytowany przez build000 2015-05-31 19:27:52)

Odp: katalog z bibiotekami do kompilacja

Odpowiem równie zagadkowo jak pytanie:
1) zassaj źródła (w źródłach leży w package/libs/ncurses i tworzy paczki libncurses i libncursesw)
2) zbuduj z zaznaczeniem tworzenia sdk
3) zajrzyj do utworzonego archiwum z sdk, gdzie to leży
wink

3 (edytowany przez cyniu88 2015-05-31 19:41:59)

Odp: katalog z bibiotekami do kompilacja

ok bardzo głupio zadane pytanie tongue
ć
ok mam źródła  zassane przekompilowane  mogę sobie kompilować pojedyncze pakiety  ale  naszło mnie by wykorzystać bibliotekę ncurses   tylko  że hmyyy   nie wiem jak to zrobić żeby się kompilowało ?

muszę przekompilować jeszcze raz cale SDK  żeby  dodało tą bibliotekę ?

czy w mojej paczce wystarczy że dodam w makefile'u " DEPENDS:=+libstdcpp +libncurses "  ?

4 (edytowany przez build000 2015-05-31 20:52:33)

Odp: katalog z bibiotekami do kompilacja

No jak Twoja paczka odnosi się bezpośrednio do drzewa źródeł, a nie do archiwum *SDK*, to zaznaczasz wpierw w "make menuconfig" samą "libncurses" i tak jak piszesz - wcale to jednak nie gwarantuje, że Twoja paczka to łyknie - może być milion innych powodów dlaczego będzie pluła kompilacja błędami przy tej danej Twojej paczce - kwestia odpowiednio spreparowanego Makefile Twojej paczki.

Dla testu zbuduj docelowo kompilant ze źródeł bez Twojej paczki z włączonym "libncurses", potem gdzieś to tam wrzuć w swoje zewnętrzne feedsy (swoją paczkę), dodaj je (ich położenie) do feeds.conf.default (czyli dodajesz pozycję na końcu pliku, np. "src-link custom <miejsce w drzewie systemu gdzie to leży>/custom-feed/<katalog główny Twojej paczki, gdzie leży główny Makefile>"), wykonaj "make/package symlinks" i dopiero potem daj na końcu:
make package/<Twoja paczka>/install V=s"
Jak się sprawdzi budowa to już przy następnym konfigurowaniu całego kompilanta zaznaczasz w "make menuconfig" swoją paczkę i mielisz na nowo (powtarzasz "make") z tym co już jest - samo się doda do "bin/*/packages/*" i/lub/również do obrazu jak to tak zaznaczyłeś. Resztą plików się nie przejmuj - zostaną nadpisane, i w sumie tą samą zawartością (oprócz np. obrazu, nowych paczek w bin/*/packages/*, reszty dodatkowych paczek jak wyjdą z budowy), ale zgodnie z nowym hashem całości.
Może nie wyjść od razu stąd ta pokrętna kolejność - po co sobie psuć .config i budować nadmiarowo paczki jak nic z tego nie wyjdzie docelowo (jak nie wyszło za danym razem to najlepiej kasować cały katalog paczki z "build_dir/target-*" i po poprawkach od nowa) - dotąd rzeźbisz swój Makefile swojej paczki, dodajesz ewentualne patche, i.t.d., aż łyknie to główny proces budowania całości przez "make".
Co do samego "libncurses" wystarczy, że dodasz do tego co już masz w "make menuconfig" i przemielisz na nowo "make" - dalej opisałem powyżej.

Sorki za ten zlepek wielu słów i skrótów myślowych - od poradników to najlepszy jest chyba Cezary.
big_smile

5

Odp: katalog z bibiotekami do kompilacja

ech   kocham  to :

udało mi się zrobić program który używa libncurses  ale tyle kombinowałem ze nie wiem jak to zrobiłem big_smile

w Makefile  dodałem DEPENDS:=+libncurses   
a w Makefile w SRC  ..... $(LIBS)= -lncurses

i działa