I'm going to release a software package which needs polynomial fits to work, and I'm currently using the GNU Scientific Library (GSL) in my project. GSL is licensed under the GPL.

GSL has many modules that can do many operations, but I only need polynomial fits. Users have to compile the package themselves, and including the whole GSL would mean a high compilation time.

Does including only the GSL source code I need for my project comply with the GPL license?

1 Answer 1


With respect to the GSL source code, you need only include in your release the code that you have taken from the GSL, not the entire library suite.

However, you must include all the rest of the source of your program, and all of it must be released under GPLv3. This is required by GPLv3 ss 6 and 5c respectively, because your work is now a derivative of the GSL code. My apologies if you already know this, but it wasn't clear from your question that you did.

  • 1
    To expand on this, I believe you need to provide source code regardless of how you use GSL, since you will need to distribute GSL with your project. Jun 2, 2020 at 22:09
  • @Programmdude yes, that's what I said. The question is, the source of what: (a) his/her program, including the bits of GSL (s)he has used; (b) his/her program, plus all of GSL; or (c) just the whole of GSL. The question fears that it's either (b) or (c), I can't tell which; I hold that it's (a).
    – MadHatter
    Jun 3, 2020 at 6:04
  • sorry it wasn't clear from the question, I meant distribute both my source code and only the GSL source code I need for my project Jun 6, 2020 at 13:59
  • @release_the_gil excellent, then I think you'll be fine. If you think your question's been answered, local etiquette is to accept the satisfactory answer by clicking on the "tick" outline next to it, which puts the question to bed, and drives the reputation system for both you and the author of the answer. Again, please accept my apologies if you already know this.
    – MadHatter
    Jun 7, 2020 at 6:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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