Hi boco,
我個人對於C standard library的權利歸屬還不是非常清楚,或許您可以提供進一步的參考資料。
但若假設C standard library是屬於公共財(Public domain)領域的話,那表示任何人都可以取用它來進行程式寫作而不受到拘束,因為公共財代表該程式碼或是函數已然不具權利適格,任何方面的應用都是合法的。
那若真的C standard library已歸屬於公共領域,那您的問題可以參照Free Software Foundation的GPL FAQ得到清楚的解答:
If a program combines public-domain code with GPL-covered code, can I take the public-domain part and use it as public domain code?:
https://www.gnu.org/licenses/gpl-faq.html#CombinePublicDomainWithGPL
You can do that, if you can figure out which part is the public domain part and separate it from the rest. If code was put in the public domain by its developer, it is in the public domain no matter where it has been.
我個人網誌上對這段文字的翻譯:
https://lucien.cc/?p=666
可以、您可以這樣做,假如您能夠很清楚的辨別該專案中,哪些程式碼屬於公共領域,然後無誤的將其抽取出來利用。因為、如果程式碼已經被原權利人宣告屬於公共領域,那它就是公共領域,不會因為這些程式碼處於哪個軟體專案而產生變化。
也就是說、如果C standard library屬於公共財,那它並不會因為被寫入GNU計畫以LGPL授權的glibc (GNU C Library) 而變成以LGPL授權,依自由軟體基金會的態度,你可以把該函式抽出來使用,但前提當然是,只有取用這類已歸屬於公共財的函式,而非GNU C Library之後自行編寫的部份。
後續若仍有問題歡迎接續討論。
敬祝 順心健康
20100510 1415 Lucien C.H. Lin