5 关于光盘中的软件

光盘中project/目录中的文件是教材用的操作系统,按照0.7节中的声明,大家是可以随意使用的。这种使用方法对与tolset/目录中的大多数文件也是适用的。在这里我们将不适用于KL-01许可协议的软件列出来,也就是说,没有在这里列出的软件都适用KL-01协议。

文 件 名 许可协议 发布地址
cc1.exe GPL http://wiki.osask.jp/?downloads/dev (go_0020)
cpp0.exe GPL http://wiki.osask.jp/?downloads/dev (go_0020)
ld.exe GPL ftp://ftp.gnu.org/gnu/binutils/ (2.13)
make.exe GPL ftp://ftp.gnu.org/gnu/make/ (3.79.1)
upx.exe GPL http://upx.sourceforge.net/ (1.25w)
t5lzma.exe LGPL http://k.hideyosi.com/tk5lgpl1.lzh
qemu/qemu.exe LGPL http://fabrice.bellard.free.fr/qemu/ (0.6.1)
qemu/bios.bin LGPL http://fabrice.bellard.free.fr/qemu/ (0.6.1)
qemu/SDL.dll LGPL http://fabrice.bellard.free.fr/qemu/ (0.6.1)

GPL是“The GNU General Public License”(GNU通用公共许可协议)的缩写,在这里可以查看协议的中文翻译版本1

http://wiki.linux.org.hk/w/GPLv3

1 值得注意的是,所有该协议的中文版都不是GNU官方翻译的版本,GNU官方发布的该协议语言只有英语、阿拉伯语、加泰罗尼亚语和德语4种版本,GNU官方协议文本请参见:http://www.gnu.org/licenses/gpl.html。——译者注

简单概括一下,就是说如果对以GPL协议发布的软件进行了修改,那么修改之后的产物也必须以GPL协议来进行发布(但这并不是说只能免费发布),而且源代码也必须公开。如果未经修改而只是单纯地转载发布的话,必须要明示其原始发布地址。如果将以GPL协议发布的软件的一部分或者全部用于自己开发的程序中,该程序也必须以GPL协议进行发布(当然源代码也需要公开)。不过修改和引用完全是私人行为,如果不公开其可执行文件的话,源代码也不必公开。以GPL协议发布的软件是无保障的,因使用该软件所造成的损失,不能向软件作者索取赔偿。

■■■■■

LGPL是“The GNU Lesser General Public License”(GNU较宽松通用公共许可协议)的缩写,在这里可以查看协议的中文翻译版本2

http://www.thebigfly.com/gnu/lgpl/lgpl-v3.php

2 值得注意的是,所有该协议的中文版都不是GNU官方翻译的版本,GNU官方发布的该协议语言只有英语、加泰罗尼亚语和德语3种版本,GNU官方协议文本请参见:http://www.gnu.org/copyleft/lesser.html。——译者注

LGPL相较于GPL只有一点不同:将以LGPL协议发布的软件的一部分或者全部用于自己开发的程序中时,不伴随协议的强制性和公开的义务。LGPL协议主要是为库而准备的,只是引用了一个库没有必要强制发布协议。不过,如果对库本身进行了修改,则修改后的库必须以LGPL或者GPL协议进行发布。

■■■■■

至于以KL-01协议发布的文件,无论怎么修改都是OK的,也没有必须将修改产物的源代码公开或者必须以KL-01协议进行发布之类的规定,大家可以随意使用。当然,它们同样是无保障。

■■■■■

本书附送的光盘里面还有很多剩余空间,因此笔者在omake/目录中塞了很多东西(其实是现在才打算要塞进去)。在写书稿的时候,还没有想好到底要放点什么东西进去,笔者会在omake/omake.txt中做出说明。不过剩余空间实在是太多了,肯定没办法全部填满,不好意思。