Using a BSD licence library, which uses a GPL library, for the iPhone

I'm getting rather confused when looking over the details of the various licenses and was wondering if someone could give me a hand. Basically, I'm looking at making a simple SSH client to release on the app store. All other SSH clients on the app store charge and, although I'm sure they'd be better than what I'd make, I'd like to add a free option. For right now I'd be just developing it for personal use or within the company I work for, which I realize means I don't need to worry about GPL incompatibilities, but I figure I'd be best setting it up to work how I want in in the first place rather than rebuilding at a later stage around a different core.

My idea is to use a pre-built SSH library, but this idea seems fraught with legal issues.

  • libssh is released under lgpl, however, and I don't want to get into the legal mess that is the iPhone dev lisence and the GPL... I hear they're largely incompatible, and would prefer to avoid any legal minefields if possible.
  • libssh2 is released under a BSD license, which AFAIK can be used with the iPhone dev lisence. Perfect, I think. As I'm looking over some instructions for compiling libssh2 for iphone, however, I notice that it uses 3 libraries from GnuPG which are released under the (L)GPL... Does this mean using libssh2 leads me into the same legal minefield as libssh? Is there some way to sub these libraries for non-GPL equivalents?
  • Are there any alternative SSH libraries which are available under iPhone-compatible licenses?

  • LGPL on iphone

    Here's an article about LGPL on the iPhone;

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

    So one option you have is to use either of the LGPL libraries, but provide your users with the object code for your app on request, or make it available on your website. (You'd need to include the references to the LGPL in some kind of "About" screen too, or in your text on the appstore.)

    However, if you're doing a free app, why not release the source code instead? Maybe other people will join in and help you.

    libssh2 and the GPL

    From looking at libssh2, it looks to me like there's the option to build with openssl or gcrypt - I believe gcrypt is the (L)GPL part you're referring to. openssl is not (L)GPL, so you can use that instead.

    Other ssh libraries

    I believe some of the iphone applications are using the ssh code that forms a part of the putty ssh client for windows. This is also released under a non-(L)GPL license.

    Writing an ssh client

    One other point to think about is that to write an ssh client, the ssh part is only half the battle - you also have to write a fairly fully featured VT100/ANSI terminal emulator if you want to use any full screen apps. This can be a bit involved and/or a bit of a painful experience, but is certainly possible and good programming experience!

    链接地址: http://www.djcxy.com/p/79494.html

    上一篇: 在开源许可下发布ASP.NET MVC 3 OpenId StarterKit

    下一篇: 为iPhone使用使用GPL库的BSD许可证库