GNU/Linux >> Znalost Linux >  >> Linux

Linux – co si musím uvědomit, pokud chci napsat aplikaci, která poběží na libovolné distribuci Linuxu?

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,

  1. Použijte standardní systém sestavování
  2. Vyhněte se tvrdému kódování knihovny cesty
  3. použijte nástroje jako pkg-config místo toho najít externí balíčky.
  4. 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.
  5. 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 .


Linux
  1. Jaké nástroje potřebuji k vývoji v jazyce ActionScript (v Linuxu)

  2. Co potřebuji k napsání malé hry na Linuxu?

  3. Spusťte aplikaci Java jako službu v systému Linux

  1. 5 nástrojů pro opravy jádra Live, které pomohou provozovat linuxové servery bez restartování

  2. Existuje distribuce Linuxu s certifikací UNIX?

  3. Jaká je velikost atomového zápisu na disk v mém systému?

  1. Co uděláte, když aplikace není zabalena pro vaši distribuci Linuxu?

  2. Jednoduchý příkaz pro Linux, který mi řekne, co je Správce zobrazení?

  3. Linux – jakou aplikaci použít pro kalendář?