Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

W tym miejscu zapraszamy Was do współpracy. Czekamy na propozycje, sugestie i rady.
Moderatorzy zatroszczą się o to, by najlepsze teksty trafiły do FAQ.

Moderatorzy: Moderatorzy, Administratorzy

Sajmon
Moderator
Posty: 1179
Rejestracja: 2004-05-22, 23:19
Lokalizacja: Graz
Kontakt:

Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Sajmon »

Aktualny skrypt znajdziesz na 3 stronie w tym wątku
Sciągamy żródełka z
http://ftp28f.newaol.com/pub/mozilla.or ... ce.tar.bz2
pobieramy naszego langa
http://darkstar.ist.utl.pt/mozilla/fire ... ngpack.xpi

Rozpakowujemy kolejno
# tar xjvf firefox-1.0rc2-source.tar.bz2
# unzip firefox-1.0PR.pl-PL.langpack.xpi

Tworzymy .mozconfig (plik konfiguracyjny firefoksa)
# touch mozilla/.mozconfig

następnie edytujemy mozilla/.mozconfig i wklejamy to co niżej widać

#.mozconfig on
export MOZ_PHOENIX=1
mk_add_options MOZ_PHOENIX=1
ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --prefix=/usr
ac_add_options --with-default-mozilla-five-home=/usr/lib/mozilla-firefox
ac_add_options --enable-strip-libs
ac_add_options --disable-tests
ac_add_options --disable-short-wchar
ac_add_options --enable-nspr-autoconf
ac_add_options --enable-extensions=cookie,xml-rpc,xmlextras,pref,transformiix,universalchardet,webservices,inspector,gnomevfs,negotiateauth
ac_add_options --enable-crypto
ac_add_options --disable-xprint
ac_add_options --without-system-nspr
ac_add_options --with-system-zlib
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --disable-freetype2
ac_add_options --enable-xft
ac_add_options --enable-xinerama
ac_add_options --enable-xterm-updates
ac_add_options --disable-accessibility
ac_add_options --disable-activex
ac_add_options --disable-activex-scripting
ac_add_options --disable-composer
ac_add_options --disable-installer
ac_add_options --disable-ldap
ac_add_options --disable-mailnews
ac_add_options --disable-profilesharing
ac_add_options --enable-single-profile
ac_add_options --disable-shared
ac_add_options --enable-static
ac_add_options --enable-official-branding
#.mozconfig off

zmieniamy do katalogu mozilla za pomocą cd i wydajemy polecenia
### dla polecenia 1-ego musisz być online, możesz ominąć jeśli chcesz ###

gmake -f client.mk checkout
gmake -f client.mk distclean
gmake -f client.mk build
make DESTDIR=/tmp/package-mozilla install

### lecimy na kawę,obiad czy cokolwiek :) i wracamy za jakieś 10 minut (zależy od maszyny jakiej uzywamy ###

teraz usuwamy kolejno
# rm -r /tmp/package-mozilla/usr/include
# rm -r /tmp/package-mozilla/usr/share/*

tworzymy sobie firefox.desktop z taką zawartością

[Desktop Entry]
Encoding=UTF-8
Type=Application
Exec=/usr/bin/firefox
Name=Firefox
GenericName=Web Browser
GenericName[pl]=PrzeglÄ…darka WWW
#Icon=/usr/lib/firefox-1.0/icons/mozicon50.xpm
Icon=/usr/lib/mozilla-firefox/icons/mozicon50.xpm
Path=
StartupNotify=true
Terminal=0
TerminalOptions=
X-KDE-SubstituteUID=false
X-KDE-Username=

i wrzucamy do $HOME/.kde/share/applnk/Internet czy gdzie Tobie pasi na sztywno,
( bardziej ambitni zrobią to w /tmp/package-mozilla/usr/share/applications/firefox.desktop )

taraz nasz lang

# cp ../chrome/pl-PL.jar /tmp/package-mozilla/usr/lib/firefox-1.0/chrome/en-US.jar

Jeśli mamy javę 1.5.x to wydajemy komendę
# ln -sf /usr/lib/jdk1.5.0/jre/plugin/i386/ns7/libjavaplugin_oji.so /tmp/package-mozilla/usr/lib/firefox-1.0/plugins/libjavaplugin_oji.so

lub dla 1.4.x
ln -sf /usr/lib/j2sdk1.4.2_05/jre/plugin/i386/ns610-gcc32/libjavaplugin_oji.so /tmp/package-mozilla/usr/lib/firefox-1.0/plugins/libjavaplugin_oji.so

Mamy inne pluginy to poprostu dowiązujemy je do /tmp/package-mozilla/usr/lib/firefox-1.0/plugins/

zmieniamy do
# cd /tmp/package-mozilla

Bardziej zaawansowani stworzą sobie

# mkdir install
# touch install/slack-desc

edytują install/slack-desc i wklepią

firefox: Mozilla Firefox - przeglądarka www
firefox: Firefox to darmowa przeglądarka www, stanowiąca wolne oprogramowanie,
firefox: dostępna dla systemów Windows, GNU/Linux i Mac OS X
firefox: (a także innych). Jest mała i szybka, a jednocześnie oferuje szerokie możliwości.
firefox:

i tworzymy paczuszkę dla installpkg lub upgradepkg

makepkg -l y -c n firefox-1.0rc2-i686-1.tgz


Pozdrawiam
Sajmon

PS.
Uwaga: kompilacja wywala się jeśli --enable-extensions zawiera typeaheadfind

PS 2.
Przed kompilacją wydaj komendę w celu upewnienia się czy masz ustawione globalnie
CFLGS i CXXFLAGS
# echo $CFLAGS
lub
# echo $CXXFLAGS

jeśli zobaczysz pustkę to ustaw sobie to np. w ~/bashrc
tutaj znajdziesz info na temat optymailzacji paczek
Ostatnio zmieniony 2006-08-01, 23:11 przez Sajmon, łącznie zmieniany 4 razy.
[url=http://polish-32053322658.spampoison.com][img]http://pics8.inxhost.com/images/sticker.gif[/img][/url]
perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
Awatar użytkownika
Minder
Użytkownik
Posty: 540
Rejestracja: 2004-08-08, 15:12
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Minder »

ac_add_options --disable-composer
Czy to oznacza, że jeśli dam --enable-composer, to otrzymam firefoxa z wbudowanym edytorem stron? To by było ciekawe :)
[url=http://Polish-30642126344.SpamPoison.com][img]http://pics2.inxhost.com/images/sticker.gif[/img][/url] [url=http://www.bykom-stop.avx.pl][img]http://www.bykom-stop.avx.pl/bannery/80x15.png[/img][/url]
Sajmon
Moderator
Posty: 1179
Rejestracja: 2004-05-22, 23:19
Lokalizacja: Graz
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Sajmon »

Powinien być, choć czytałem gdzieś niedawno że ponoć jest z deka popsuty.
[url=http://polish-32053322658.spampoison.com][img]http://pics8.inxhost.com/images/sticker.gif[/img][/url]
perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
Awatar użytkownika
cherry
Moderator w st. spocz.
Posty: 1160
Rejestracja: 2004-06-15, 09:57
Lokalizacja: Kraków
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: cherry »

Polecam np

Kod: Zaznacz cały

ac_add_options '--enable-optimize=-march=athlon -Os -s -pipe -DNDEBUG -DG_DISABLE_ASSERT'
zamiast samego enable-optimize
Cльaцквaрэ Линукс цypэнт
[url]http://www.pajacyk.pl/[/url]
[url]http://www.polskieserce.pl/[/url]
Awatar użytkownika
Minder
Użytkownik
Posty: 540
Rejestracja: 2004-08-08, 15:12
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Minder »

gmake -f client.mk build
make DESTDIR=/tmp/package-mozilla
Wygląda na to, że już pierwsza z podanych linijek kompiluje program, co więc robi druga? Czy nie powinno być tam raczej "make install"?

Edit:
Ekhym.. nie wiem dlaczego, ale "make install ........" u mnie nie chce zadziałać. Idę poszukać oryginalnego HOW-TO :wink:
[url=http://Polish-30642126344.SpamPoison.com][img]http://pics2.inxhost.com/images/sticker.gif[/img][/url] [url=http://www.bykom-stop.avx.pl][img]http://www.bykom-stop.avx.pl/bannery/80x15.png[/img][/url]
Sajmon
Moderator
Posty: 1179
Rejestracja: 2004-05-22, 23:19
Lokalizacja: Graz
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Sajmon »

cherry pisze:Polecam np

Kod: Zaznacz cały

ac_add_options '--enable-optimize=-march=athlon -Os -s -pipe -DNDEBUG -DG_DISABLE_ASSERT'
zamiast samego enable-optimize
Ja kompiluję na P4
ac_add_options --enable-optimize="-Os -freorder-blocks -fno-reorder-functions -gstabs+"
[url=http://polish-32053322658.spampoison.com][img]http://pics8.inxhost.com/images/sticker.gif[/img][/url]
perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
Awatar użytkownika
cherry
Moderator w st. spocz.
Posty: 1160
Rejestracja: 2004-06-15, 09:57
Lokalizacja: Kraków
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: cherry »

Sajmon pisze: ac_add_options --enable-optimize="-Os -freorder-blocks -fno-reorder-functions -gstabs+"
Po co ci informacje dla debuggera?
Cльaцквaрэ Линукс цypэнт
[url]http://www.pajacyk.pl/[/url]
[url]http://www.polskieserce.pl/[/url]
Sajmon
Moderator
Posty: 1179
Rejestracja: 2004-05-22, 23:19
Lokalizacja: Graz
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Sajmon »

Bo nic innego nie otwiera mi narazie tak płynnie i szybko stron jak właśnie z opcjami dla debugera. Szczerze mówiąc nie wiem dlaczego, ale mam takie wrażenie że właśnie tak najlepiej funkcjonuje u mnie firefox.
Dziś mam dużo czasu na zabawę :mrgreen:

[ Dodano: 2004-11-13, 08:29 ]
Polecam wątek Firefox Tuning który zanlazłem na MozillaZine.
Firefox chodzi teraz u mnie jak burza :mrgreen:
[url=http://polish-32053322658.spampoison.com][img]http://pics8.inxhost.com/images/sticker.gif[/img][/url]
perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
Awatar użytkownika
player4
Użytkownik
Posty: 54
Rejestracja: 2004-09-25, 09:18
Lokalizacja:
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: player4 »

firefox nie chce sie kompilowac :/ bledy:

Kod: Zaznacz cały

...
checking for libIDL-2.0 >= 0.8.0... Package libIDL-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libIDL-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libIDL-2.0' found

configure: error: Library requirements (libIDL-2.0 >= 0.8.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.
*** Fix above errors and then restart with "gmake -f client.mk build"
gmake: *** [/root/mozilla/Makefile] Error 1
bash-2.05b# find /usr -name 'libIDL-2.0.pc'
bash-2.05b# 
brakuje mi jakiejs paczki? ja dlugo goglowac i sie juz poddac... instalowac libIDL-0.8.3, wciaz nie dzialac... :oops:
pomocy!
killall SIGQUITF00LIN player4*
"Broken windows cure my ills and make me feel alright..." - The Offspring
Awatar użytkownika
cherry
Moderator w st. spocz.
Posty: 1160
Rejestracja: 2004-06-15, 09:57
Lokalizacja: Kraków
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: cherry »

Ty pokazać

Kod: Zaznacz cały

echo $PKG_CONFIG_PATH
Cльaцквaрэ Линукс цypэнт
[url]http://www.pajacyk.pl/[/url]
[url]http://www.polskieserce.pl/[/url]
Awatar użytkownika
gaia
Użytkownik
Posty: 598
Rejestracja: 2004-06-12, 10:10
Lokalizacja: rhea
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: gaia »

pokazać nic nie dać, on musieć zmienić ta zmienna, ewentualnie zainstalować libIDL [czy jak tam być ta biblioteka] z opcją: --prefix=/usr . to móc pomóc [hic!]. pozdrawiać
[...] her perfume smells like burning leaves... everyday is Halloween [...]
Awatar użytkownika
player4
Użytkownik
Posty: 54
Rejestracja: 2004-09-25, 09:18
Lokalizacja:
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: player4 »

Polecenie

Kod: Zaznacz cały

echo $PKG_CONFIG_PATH
Nic nie pokazywalo. Poszedlem po rozum do glowy i zainstalowalem z currenta paczke gnome/libIDL-0.8.3...
Sprawdzilem co tam ma i oto prosze: brakujace libIDL-2.0.pc! Nie mialem takiego pliczku kiedy kompilowalem zrodelka - tez 0.8.3... :?
Zainstalowalem i dziwo i tym razem echo $PKG_CONFIG_PATH nic nie wyswietla, ale brakujace gowienko (nie myslalem ze bede instalowal cokolwiek z gnome/ :/ ) juz mozna znalezc...

Kod: Zaznacz cały

bash-2.05b# find /usr -name 'libIDL-2.0.pc'
/usr/lib/pkgconfig/libIDL-2.0.pc
bash-2.05b#
Uff! Kompilacja firefoxa poszla dalej... Nie bede czekac na wyniki - ide cos wszamac :)
Dzieki za sugestie ;)
killall SIGQUITF00LIN player4*
"Broken windows cure my ills and make me feel alright..." - The Offspring
Awatar użytkownika
Rookie One
Użytkownik
Posty: 230
Rejestracja: 2004-11-13, 13:16
Lokalizacja: Gliwice
Kontakt:

Re: Kompilujemy firefoksa

Post autor: Rookie One »

Sajmon pisze:Sciągamy żródełka z
http://ftp28f.newaol.com/pub/mozilla.or ... ce.tar.bz2
Wiesz, ze juz jest stabilna wersja 1.0? :P Chyba lepiej:
http://ftp.mozilla.org/pub/mozilla.org/ ... ce.tar.bz2
Sajmon pisze:pobieramy naszego langa
http://darkstar.ist.utl.pt/mozilla/fire ... ngpack.xpi
...i mamy 404 not found. J/w + dzialajacy link:
http://64.12.168.21/pub/mozilla.org/fir ... ngpack.xpi
Mam nadzieje, ze komus sie to przyda. :D
[color=darkblue][b]- [ Slackware 10.2, kernel 2.4.31 ]
- [ Windows XP Home SP2 ][/b][/color]
[size=75]Pentium 4 3 GHz HT, 512 MB RAM, Intel 915G[/size]
Registered Linux User #372988
M3n31
Użytkownik
Posty: 8
Rejestracja: 2004-11-17, 16:35

Re: Kompilujemy firefoksa

Post autor: M3n31 »

Sajmon pisze:gmake -f client.mk checkout
gmake -f client.mk distclean
gmake -f client.mk build
make DESTDIR=/tmp/package-mozillaozilla/usr/share/*
Do tego miejsca poszlo bez problemu, ale ja nie mam w systemie gmake :( a jak robie normalnym make to wyskakuje blad ze plik client.mk nie istnieje co jest? A moze wiecie skad wytrzasnac gmake? szperalem juz po slack package browserze i gowno znalazlem :(
Sajmon
Moderator
Posty: 1179
Rejestracja: 2004-05-22, 23:19
Lokalizacja: Graz
Kontakt:

Re: Kompilujemy Firefoksa - (sposoby i dyskusja o rekompilacji)

Post autor: Sajmon »

gmake jest dowiązaniem do make
# cd /usr/bin ; ln -sf make gmake
[url=http://polish-32053322658.spampoison.com][img]http://pics8.inxhost.com/images/sticker.gif[/img][/url]
perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
Zablokowany