Delphi运行时代码是否是开源的? [英] Is the Delphi runtime code open-source or not?

查看:480
本文介绍了Delphi运行时代码是否是开源的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这个问题中,我调用了Delphi运行时源代码开源,只是因为它是开放的。其他人不同意这一点,因为德尔福本身就是一种商业产品。根据维基百科开源必须符合一套规则

In this question I've called the Delphi runtime source code "open source", simply because it's open. Others disagree with this because Delphi itself is a commercial product. According to Wikipedia, open source must comply to a set of rules.

我已经在Delphi许可证中进行了快速扫描,但找不到有关其许可状态的清晰记录。它在system.pas中有一个名为DECLARE_GPL的编译器指令,它是所有其他Delphi单元的根。自动添加系统单元是您不需要添加到您的单位的唯一单位。因此,如果system.pas是GPL,那么使用它的任何东西都将是GPL!但是Delphi正在为这些源文件提供双重许可,所以人们可以选择不使用GPL许可证。

I've done a quick scan in the Delphi license but can't find a clear note about it's licensing status. It does have a compiler-directive called DECLARE_GPL in system.pas which is the root for all other Delphi units. The system unit is the only unit that you don't need to add to your units since it's automatically added. Thus, if system.pas is GPL, anything that uses it would be GPL too! But Delphi is providing a dual-license for these source files so people could choose not to use the GPL license.

但是,如果Delphi源代码可用,并且它支持GPL,即使它也具有可以应用的二级许可证,Delphi运行时源代码是否是开源的?

Still, if the Delphi source code is available and it supports the GPL, even though it also has a secondary license which could be applied too, would the Delphi runtime source code be open-source or not?

从system.pas的Delphi 2007:

From system.pas of Delphi 2007:


(* GPL符号的存在表示系统单元和其余的Delphi运行时库被编译为使用根据GNU通用公共许可证(GPL)的条款分发。

根据GPL条款,所有使用GPL版本的Delphi运行时库编译的应用程序也必须按照GPL。有关GNU GPL的更多信息,请参见 http://www.gnu.org/copyleft /gpl.html

GPL符号d在商业/专有软件开发中购买的Delphi运行时库中不存在。

The GPL symbol does not exist in the Delphi runtime library purchased for commercial/proprietary software development.

如果您的源代码需要知道正在编译的授权模式,您可以使用{$ IF DECLARED(GPL)} ... {$ IFEND}来测试GPL符号的存在。符号本身的值不重要。 *)

If your source code needs to know which licensing model it is being compiled into, you can use {$IF DECLARED(GPL)}...{$IFEND} to test for the existence of the GPL symbol. The value of the symbol itself is not significant. *)

特别是源文件中的这个文本使我对许可证有疑问。如果它可以作为GPL分发,这不意味着它也是开源的?

Especially this text inside the source makes me doubt about the license. If it's distributable as GPL, doesn't this mean it's also open-source?

推荐答案

否 - 这不是开源的。如果您拥有delphi,可以看看它,但是就是这样。对于我的版本,它说:

No - it's not open source. You may take a look at it if you own delphi but that's it. For my version it says:

{ *********************************************************************** }
{                                                                         }
{ Delphi / Kylix Cross-Platform Runtime Library                           }
{ System Utilities Unit                                                   }
{                                                                         }
{ Copyright (c) 1995-2005 Borland Software Corporation                    }
{                                                                         }
{ Copyright and license exceptions noted in source                        }
{                                                                         }
{ *********************************************************************** }

它可能包含有许可证例外的开放源代码。如果您想使用开源版本,请查看免费pascal( http://www.freepascal.org/

It may contain open-source where there are license exceptions though. If you want to have an open-source version, check out free pascal (http://www.freepascal.org/)

Borland是版权持有人,所以他们可以根据不同的许可证进行许可(见例如MySQL或QT的双重许可模式)。您发布的系统的一部分表明,他们过去已经这样做了。

Borland is the holder of the copyright, so they may license it under different licenses (see for examplel the dual licensing model of MySQL or QT). The part of systems.pas you posted suggests, that they have done so in the past.

似乎有一个GPL版本的system.pas,它定义了GPL符号。如果您使用此版本编写程序,由于GPL的感染性,您编写的代码也必须放在GPL下。如果您购买了商业版本,则您有不同的许可证,您不需要将代码放在GPL下。

There seems to be a GPL-version of systems.pas, that defines the GPL-symbol. If you write a program using this version, due to the infective nature of the GPL, the code you write has to be placed under the GPL as well. If you bought the commercial version, you have a different license and you do not need to place your code under the GPL.

我只能猜测哪个版本的Delphi IDE有GPLed systems.pas。如果我不得不,我会猜测Kylix是Linux(也许是Windows)。

I can only guess which version of the Delphi IDE has the GPLed systems.pas. If I'd had to, I'd guess Kylix for Linux (perhaps for Windows as well).

这篇关于Delphi运行时代码是否是开源的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆