Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That's just a question of where one software ends and another begins. Essentially, for lawyers to decide.

But that's also why LGPL exists.



The question is clearly determined by copyright law. If I call a function, this doesn't make the calling function a derived work.

LGPL is the GPL variant which is usually reasonable to use, as it doesn't require any other parts of the program to be put under (L)GPL. However, there are some technical details with the license which make problems. It basically assumes that the code put under LGPL is delivered as a shared library. But that doesn't work with many languages. Especially the requirement, that the user needs to be able to modify and relink the code under LGPL is a big headache, if not a deal breaker in many situations.


> The question is clearly determined by copyright law. If I call a function, this doesn't make the calling function a derived work.

It does make the called function a part of your program, however. Because if that function is not available on the target system (in a shared library or whatever), your program will simply blow up.


Well, sure, a missing function will cause the program to fail to function. But what has this to do with the discussion?

The copyright of the program is clearly mine. The copyright of the functions linked into my program is that of the functions copyright holder. The license regulates my right to link the functions in my program. But unfortunately, the license tries to affect my copyrights to my program parts.


It just regulates the conditions under which the (hopefully) dynamic library is distributed.

If the question comes to court (IIUC, this particular case has never been tested), you are just as likely to be ordered to pay for copyright infringement damages, rather than release your software under a GPL-compatible license. You'd have to rewrite it somehow as well, of course.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: