The LGPL seems to stipulate that I have to distribute my app in a way that the LGPLed code can be replaced. Xamarin keeps saying that to distribute a mac app in the store, I need to use Xamarin.Mac and buy a license. Now, if I have a closed source app and I distribute a .app bundle where the Mono runtime is present as a .dylib rather than statically compiled into some executable, I'm compliant, yes? I don't understand their restriction.

MonoDevelop/Monomac distributes apps in a way that requires the user to jump through the hoops of installing the Mono runtime, but this seems totally unnecessary if I just bundle mono in as a replacable library.


Merely providing an LGPL'd library as a .dylib does not make you compliant. You must also include the source code and any tools necessary to allow someone to modify the library for their own purposes and use those modifications in your program.

It's very likely that the Apple ecosystem does not support such an arrangement, which is why Xamarin recommends that you use their commercial tools for this purpose.

  • include is a bit misleading. You have to provide the source code if the recipient so desires. The distributed software doesn't need to have the source code included with the binaries. – Sami Kuhmonen Aug 29 '15 at 14:02
  • @SamiKuhmonen: Your obligations under the GPL increase significantly if you choose that route. See softwarefreedom.org/resources/2008/compliance-guide.html under the subheading: "The Offer." – Robert Harvey Aug 30 '15 at 0:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.