Portál AbcLinuxu, 8. května 2025 13:56
mám tu Slackware a chystám se na ruční kompilaci Firefoxu.Postupuju podle tohoto návodu.
Než se do toho pustím, měl bych pár dotazů na postup. Jestli mám někde chybu, rád bych se o ní dozvěděl dřív, než začnu něco dělat. Je jednoduší, dohledat co jsem nepochopil, před začátkem práce, než zůstat vyset v polovině. Když to vezmu v bodech, tak:src
, kde budou zdrojové kódy, musí být v /home
?*bootstrap.py.
a jeho uložení do adresáře src
mozilla-central
, který je v adresáři se zdrojovým kódem?.mozconfig
./mach build
*Pokud jde o umístění zdrojových kódu, rád bych je měl v adresáři /usr/ports
. Rád bych si časem vytvořil něco jako hodně zjednodušený systém portů, podobný tomu jaký je ve FreeBSD, nebo v Gentoo, ale na tomto umístění netrvám.
Řešení dotazu:
Sice je mi záhadou, proč chceš ručně kompilovat Firefox, nicméně dobrý návod můžeš získat třeba tak, že se podíváš, jakým způsobem vznikají balíčky pro rozumná distra, kde se celý „recept“ dá jednoduše „přečíst“. Třeba tak, že jsou v obyčejném Bashi funkce prepare()
a build()
.
Takhle se buildí Firefox ze stažených zdrojáků konkrétní verze.
Takhle se buildí Firefox z Mercurialu.
Možná si budeš chtít konfiguraci upravit po svém, ale i tak je dobré mít k dispozici funkční baseline. Pole depends
a makedepends
jsou taky dobrá nápověda, protože je lepší nainstalovat si všechny závislosti předem, než podesáté marně spouštět kompilaci a doufat, že tentokrát už nic nechybí.
Faktem zůstává, že pokud má člověk potřebu ručně buildit software, který má být k dispozici jako balíček, s největší pravděpodobností používá špatné distro (pro daný účel). Buď má mít distro k dispozici potřebný balíček, nebo má mít snadno použitelný build systém, který vyřeší všechny závislosti a balíček vytvoří, buď podle původního „receptu“ nebo s modifikacemi podle libosti.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.