Qual è il modo migliore per distribuire programmi commerciali su Linux? [chiuso]

0

A causa della diversità delle distribuzioni Linux, è abbastanza comune che i programmi siano distribuiti in formato sorgente insieme agli script per aiutare configure, make, make install sequence.

Quando si tratta di programmi commerciali, tuttavia, la distribuzione della fonte di solito non è semplicemente possibile.

Quindi, se qualcuno vuole vendere un programma e distribuirlo su un ambiente Linux, cosa dovrebbe fare? Come si fa normalmente?

    
posta Gigi 21.09.2013 - 08:51
fonte

1 risposta

5

È fatto allo stesso modo in cui è fatto su qualsiasi sistema operativo; distribuendo pacchetti binari.

configure; make; make install è ancora comunemente visto nelle istruzioni per il software open source perché è molto portabile e spesso consente di installare software scritto per UNIX generico piuttosto che per Linux in modo specifico. Compilare il software sul computer di destinazione (o uno simile ad esso) significa che il compilatore userà i file header (e il linker troverà le librerie giuste) su misura per il sistema operativo specifico e (nel caso di Linux) per la distrubuzione. Gli GNU Autoconf configurano gli script in grado di rilevare un'ampia varietà di variazioni nei sistemi operativi UNIX e provare a scegliere le librerie più appropriate e opzioni del compilatore per il sistema.

La compilazione da sorgente consente anche all'utente finale di scegliere ottimizzazioni specifiche, se lo desiderano. Oh, e cambia il codice come vogliono (anche se la licenza può limitare il modo in cui possono quindi ridistribuirlo).

Se vuoi distribuire software commerciale, compila prima e distribuisci il risultato. Tuttavia, potrebbe essere necessario generare più di una versione, a seconda della complessità del pacchetto. Potrebbe essere necessario creare una versione per Red Hat e derivati, un'altra per Debian e derivati ecc; per ogni distribuzione, potrebbe essere necessario generare diversi pacchetti per le diverse versioni ancora in uso comune (una per RHEL 5, un'altra per RHEL6) a causa di librerie incompatibili. Oppure potresti dover creare una versione per i kernel più vecchi di una versione particolare, e un'altra per le versioni successive, se l'interfaccia del kernel importante per la tua applicazione è cambiata. Potrebbe essere necessario creare pacchetti per ciascuno di queste permutazioni (versione distribuzione + distribuzione + versione kernel). Devi farlo perché i binari non possono adattarsi: è a questo che serve la fonte.

    
risposta data 21.09.2013 - 11:08
fonte

Leggi altre domande sui tag