# ModelingToolkit V11 Library Split and Licensing, Community Feedback Requested

**URL:** <https://discourse.julialang.org/t/modelingtoolkit-v11-library-split-and-licensing-community-feedback-requested/134396>\
**Category:** Community\
**Tags:** community, sciml, modelingtoolkit\
**Created:** [December 6, 2025, 1:37am UTC](https://discourse.julialang.org/t/modelingtoolkit-v11-library-split-and-licensing-community-feedback-requested/134396 "2025-12-06T01:37:26Z")\
**Posts on this page:** 1\
**Showing post:** 41

<div class="post-metadata">

**Author:** ![foobar\_lv2](https://avatars.discourse-cdn.com/v4/letter/f/ee59a6/32.png) [@foobar\_lv2](https://discourse.julialang.org/u/foobar_lv2)\
**Post date:** [December 8, 2025, 12:54pm UTC](https://discourse.julialang.org/t/modelingtoolkit-v11-library-split-and-licensing-community-feedback-requested/134396/41 "2025-12-08T12:54:40Z")

</div>

> [@viralbshah](#):
>
> > [@GeorgeGkountouras](#):
> >
> > 1. Are artifacts generated by the AGPL compiler bound by AGPL? Traditionally, compilers are under a different license than their artifacts. For example, the gcc compiler is under GPL, but includes a “runtime exception” for compiled programs.
> 
> This is something we still don’t have a clear answer and thought process around, but will clarify by around January.

Afaiu reason for the GCC “runtime exception” is not that compiled works are derivatives of the compiler (they are normally not!). It is rather that C++ compilers are expected to provide stuff like the STL. So your compiled C++ binary is not derived from the used compiler, but if you use e.g. std::string then your compiled binary is a derived work of the GNU libstd++ implementation of std::string. I think it’s also a derived work of GNU libstdc++ if you compile with `clang -stdlib=libstdc++`.

I personally think that this is utterly insane C++ nonsense-- language and standard library should have been more separate, ABI over API. But 🤷

(I think the otherwise obvious approach – make libstdc++ LGPL instead of GPL – can’t really work, because you need to inline from libstdc++, dynamic linking is too slow, and LGPL afaiu doesn’t permit that)

> [@ChrisRackauckas](#):
>
> So basically a tl;dr is: **if you don’t already have to deal with building GPL-free Julia and you don’t build commercial web services, then you can ignore this change** (or maybe you’re already violating GPL licenses 😅). My guess is that the vast majority of users are in the camp where they already don’t worry about GPL dependencies and use the standard Julia binary.

There is no issue with GPLv3, but afaiu AGPL is incompatible with GPLv2.

In other words: Even if you don’t care about licenses at all and want to open-source everything, it would probably be problematic to distribute artifacts that depends on both GPLv2 and AGPL libraries (even if you don’t modify/fork the libraries).

I think you’d be allowed to pass on the source code to the resulting package; but I think you’d be in hot water if you additionally wanted to distribute a docker image with everything pre-compiled to your students in a course: GPLv2 demands that recipicients of the precompiled binary code inside the docker image are entitled to source code without onerous extra restrictions, but AGPL is considered such an incompatible onerous restriction by GPLv2. But IANAL, please discuss that in the FAQ!

---

_[View the full topic](https://discourse.julialang.org/t/modelingtoolkit-v11-library-split-and-licensing-community-feedback-requested/134396)._
