Plánuji napsat aplikaci, kterou bych chtěl spustit na libovolné instalaci Linuxu, aniž bych při tom musel přepisovat jakýkoli kód (možná kromě rozhraní, GNOME vs KDE atd.).
Nejsem příliš zkušený v detailech rozdílů mezi distribucemi a také nemohu poskytnout podrobnosti o projektu, protože právě vstoupil do fáze plánování, kromě toho, že se bude šťourat hluboko uvnitř jádra, aby mohl interagovat. s co největším množstvím hardwaru počítače.
Přijatá odpověď:
Některé body, které je třeba mít při vývoji na paměti,
- Použijte standardní systém sestavování
- Vyhněte se tvrdému kódování
knihovnycesty - použijte nástroje jako
pkg-config
místo toho najít externí balíčky. - Pokud má vaše aplikace grafické uživatelské rozhraní, použijte některé rámce jako
wxWidgets
který dokáže vykreslit nativní prvky uživatelského rozhraní v závislosti na tom, kde spouštíte. - Vyhněte se vytváření závislostí s balíčky, které nelze spustit v jiných distribucích.
Jediný způsob, jak plně zajistit, aby vaše aplikace fungovala na všech distribucích, je skutečně ji spouštět a testovat. Jedním ze způsobů, jak toho dosáhnout, je vytvoření virtuálních strojů pro každou distribuci. K tomu lze použít VirtualBox. Mám v krabici asi 8 virtuálních strojů pro tento druh testování.
Myslím, že na nasazení aplikace nelze příliš generalizovat, protože každá distribuce používá jiný způsob instalace balíčků. Debian používá deb
a fedora rpm
.