最终,由于没有任何进展,四月份就有一个LibreDWG的开发者私人联系了 Richard Stallman (还有包括我在内 CCed 的几个人). 花了相当多的口舌 (3 个月啊) 才让他说清楚,结果就是:
问题的核心
本质上来说,问题事关GPLv2 和 GPLv3+之间的不兼容. LibreDWG 许可用的是 GPLv3+, 而所有的版权都属于自由软件基金会. 实际的开发者在法律上并没有话语权 。
GPL 明确声明 上的 FAQ:
GPLv3 同 GPLv2 兼容么?
不兼容. GPLv3中的一些要求, 比如要求提供安装信息,在 GPLv2 中并不存在. 因此,许可是不兼容的: 如果你硬是要在两份协议下进行代码发布, 你就会违背GPLv2的第六条.
不过,如果代码是在GPL”版本2或者之后的版本“下发布的,就能兼容 GPLv3 ,因为这时候 GPLv3 就是其中一个被动允许的选择了.
对与FreeCAD来说,问题在于Coin3D库和 Open CASCADE 库。前者过去只使用GPLv2,并在2011年12月份将许可证修改为了和GPL兼容的BSD 3。
但是,Open CASCADE 项目现在使用的是它自己的 Open CASCADE Technology Public License ,但是该许可证不兼容GPL。在2009年的时候,Debian 团队就这个问题专门联系了他们。在2011年后期,他们公开声明他们正在考虑将OCCT(该库)改为双许可证。但是,在2012年二月份他们声明要推迟这一举动。据Andrey Betenev说,直到2012年十二月份,在控制着Open CASCADE 资产的公司中一直未停息对它的讨论。
对于LibreCAD来说,涉及到法律的问题是继承子Ribbonsoft的只用GPLv2 授权的代码,Ribbonsoft创建了最初的QCad 的社区版的产品。该公司拒绝了修改代码许可证的要求,甚至要求立即从LibreCAD中去掉文档和字体之类的其他内容。
所以,在FSF在matter上作出最后的声明(同样不是公开的)之前,我们面临这一个尴尬的境地,LibreCAD对软件用户变得好使的同时,也面临着潜在的法律问题。
在看到free CAD 软件的开发者不能使用LibreDWG之后,该库的开发者最终失去了他们在这个项目上的工作动力,并不再涉入。这并不会使这个情况有所好转。
现在怎么样了
就DWG在自由软件方面的支持来说,并不怎么样。GRASS 还是目前唯一一个使用LibreDWG库的项目。FreeCAD团队正准备发布v0.13,LibreCAD正在忙于即将到来的v2.0,Open Asset Import Library 和Blender是兼容的,但是没有志愿者来支持DWG文件了。
同时,在今年早些时候Open Design Alliance发布了他们的DWG标准 v5.2。该标准在解码ACIS二进制数据方面(这是DWG对于FreeCAD最重要的一部分)做出了限定。
实际上,LibreDWG的开发目前处于停滞状态。master分支上的最新修改提交于2011年的一月份,r2007分支上的最新修改提交于2012年的2月份
接下来怎么办
我们怎么才能解决这个问题呢?实际情况是:我们也许无能为力。
你不能强制要求Open CASCADE的管理者将许可证切换到LGPL:他们只有在他们感到乐意并有律师的绿灯的时候才会这样做。了解了Ribbonsoft的发展轨迹之后就会知道,你让他们修改QCad社区版中的代码许可证的概率几乎为0。
如果不修改许可证的话,有没有其他可以替代的技术?如插件?答案是不太可能。
举例来说,根据LibreCAD团队所说,目前只有两种方式让LibreDWG作为LibreCAD插件的方式合法的使用:
重写LibreCAD中所有的只使用GPLv2的类。
创建一堆的代理项目来解决许可证不兼容的问题。
结合LibreCAD目前的开发状态,这两种方式看起来都不现实,坦白讲,就长期的策略来看,方法2根本不用考虑。
更新:据一位LibreDWG的开发者来说,方法2并不合法。
最后,当你解决完法律相关的问题,你还需要面对LibreDWG现在已经无人维护并且甚至都没有一个发布版的压缩包这样一个事实。它看上去并没有任何后续的开发,针对R2007文件格式的代码还待在分支里面,并且没有对R2010文件格式做任何工作的迹象。
但是,等等,LibreDWG不是自由软件基金会(FSF)中具有高优先权的项目吗?不幸的是,目前的情况是,寄希望于FSF领导该项目已经被证明是不可能的了。
Richard Stallman 甚至都没有意识到这个他们的一个“高优先级”的项目已经长期面临的问题。并且在他了解到该问题之后,他都没有采取任何的行动:没有宣传活动,没有直接接触我们所知道当事人。
在2012年6月份的时候,我和Richard就LibreDWG进行了一次私人的交谈。我特意问了他,FSF是否计划采取一些行动,以确保LibreDWG的工作没有被自由用户软件闲置。
在过了6个月(在必要时,我可以很有耐心的)以及几次催促之后,Richard还是没有提供任何答复。显然,这个问题都不值得有一个答案。
你可以在那方面自由的做出你的结论。我保留自己的意见。
正如你所见,为FreeCAD和LibreCAD解决这个问题需要一个精心策划的运动。需要引入一个聪明的策略。并且在你达到一个可以对DWG文件进行高质量的读写的阶段之前,需要花费数年的时间。所以,我们在讨论的是一个关于无期限的耐心,同时要保持热情以及一些管理技巧的事。
我相信:一定有一个CAD的版本可以宣称“接受挑战”(译者注:语出《老爸老妈浪漫史》中巴尼的名言"Challenge accepted")。说不定就是你?