2010-08-26 17 views
5

Mi sto piuttosto confondendo guardando i dettagli delle varie licenze e mi chiedevo se qualcuno potesse darmi una mano. Fondamentalmente, sto cercando di realizzare un semplice client SSH da rilasciare nell'app store. Tutti gli altri client SSH presenti nell'app store si caricano e, anche se sono sicuro che sarebbero migliori di ciò che creerei, vorrei aggiungere un'opzione gratuita. Per ora mi piacerebbe solo svilupparlo per uso personale o all'interno dell'azienda per cui lavoro, cosa che mi rendo conto significa che non devo preoccuparmi delle incompatibilità GPL, ma immagino che sarebbe meglio configurarlo per lavorare come Voglio in primo luogo piuttosto che ricostruire in un secondo momento attorno a un nucleo diverso.Utilizzo di una libreria di licenze BSD, che utilizza una libreria GPL, per l'iPhone

La mia idea è di utilizzare una libreria SSH pre-costruita, ma questa idea sembra piena di problemi legali.

  • libssh è rilasciato sotto licenza LGPL, tuttavia, e non voglio entrare in il pasticcio giuridico che è l'iPhone dev lisence e GPL ... ho sentito che sono in gran parte incompatibili , e sarebbe preferire evitare eventuali campi minati legali se possibile.
  • libssh2 è rilasciato sotto una licenza BSD, che AFAIK può essere utilizzato con l'iPhone dev lisence. Perfetto, penso. Come sto guardando oltre some instructions for compiling libssh2 for iphone, però, ho comunicazione che utilizza 3 librerie da GnuPG che vengono rilasciati sotto la (L) GPL ... Questo significa utilizzando libssh2 mi porta nella stessa legale campo minato come libssh? C'è qualche modo per sottoporre queste librerie agli equivalenti GPL ?
  • Esistono altre librerie SSH disponibili sotto le licenze compatibili con iPhone ?
+0

Stai confondendo LGPL con GPL. Non sono la stessa cosa. È possibile collegarsi dinamicamente alla libreria LGPL (purché il codice della libreria non sia cambiato) e non trasformerà il progetto in LGPL. Tuttavia, il collegamento con GPL (senza la licenza "L") rende il tuo progetto GPL. Per domande su GPL/LGPL è necessario contattare [email protected] (http://www.gnu.org/licenses/license-list.html) – SigTerm

+0

Non è possibile collegare in modo dinamico le librerie su iPhone. Questo sembra implicare (ma IANAL) che tu possa usare solo le librerie LGPL in app iOS GPL completamente, se anche questo. – hotpaw2

+0

È possibile utilizzare il collegamento statico quando si utilizza LGPL, è sufficiente rilasciare i file oggetto compilati per l'app (o la fonte). – JosephH

risposta

6

LGPL su iPhone

Ecco un articolo su LGPL su iPhone;

http://huyzing.com/2009/08/24/compatibility-between-the-iphone-app-store-and-the-lgpl/

Così un'opzione che avete è quella di utilizzare una delle librerie LGPL, ma fornire agli utenti con il codice dioggetto per la vostra applicazione su richiesta, oppure renderlo disponibile sul tuo sito web. (Dovresti includere i riferimenti alla LGPL in qualche tipo di schermata "Informazioni" o nel tuo testo nell'appstore.)

Tuttavia, se stai facendo un'applicazione gratuita, perché non rilasciare il codice sorgente invece? Forse altre persone si uniranno e ti aiuteranno.

libssh2 e GPL

Guardando libssh2, mi sembra come se ci fosse la possibilità di costruire con OpenSSL o gcrypt - Credo gcrypt è la (L) GPL parte ti riferisci a. openssl non è (L) GPL, quindi puoi usarlo.

Altre biblioteche ssh

credo che alcune delle applicazioni per iPhone stanno usando il codice ssh che forma una parte del cliente stucco SSH per Windows. Questo è anche rilasciato sotto una licenza non- (L) GPL.

scrittura di un client ssh

Un altro punto da pensare è che per scrivere un client ssh, la parte ssh è solo metà della battaglia - si hanno anche per scrivere un terminale VT100/ANSI abbastanza completamente descritto emulatore se si desidera utilizzare qualsiasi app a schermo intero. Questo può essere un po 'complicato e/o un'esperienza un po' dolorosa, ma è certamente possibile e una buona esperienza di programmazione!

+0

Ciao Joseph, Grazie per la risposta molto completa! Vi voterei ma, come potete vedere, sono nuovo qui e non ho ancora punti sufficienti per farlo. Buon punto su OpenSSL, sono riuscito a ottenere la compilazione bene usando un tutorial su www.x2on.de, ma ho un po 'più problemi con libssh2 stesso. Continuo a ricevere il seguente errore: ../libtool: eval: riga 947: errore di sintassi vicino a token imprevisto '| ' Qualche idea su come risolvere questo problema? – Li1t

+0

Effettivamente, forse ho trovato la fonte del mio problema qui: https://trac.macports.org/ticket/22224 Tuttavia, non risolvo ancora il mio problema, comunque. – Li1t

+0

Sono arrivato fino in fondo. Ho modificato il file libtool per cambiare i valori di global_symbol_pipe e NM a quelli suggeriti, rimuovendo contemporaneamente le istanze extra di "link -dump -symbols" che apparivano nel mio Makefile (rispetto alla versione i386 che ho compilato) – Li1t

Problemi correlati