SDL如何在没有源文件的情况下工作



在1.2版本的SDL库中,我找不到.c或.cpp文件。

我知道我可以从SDL网站下载,但我猜,SDL是如何只处理头文件的,它不需要源文件来读取函数的定义?

这可能是因为您关注的是库(二进制)分发,而不是源代码。这里的第一部分:

http://www.libsdl.org/download-1.2.php

是源代码(作为tar.gz、rpm和zip文件档案),后面是二进制发行版的各种变体。

源代码存储库中肯定有很多.cc(C++源代码的另一个名称)文件。

在二进制发行版中,只有您需要使用或与库一起开发的文件,即在前一种情况下可以安装在机器上的DLL或.so文件,在第二种情况下,还有头文件、.lib或.a文件,它们允许您编译使用库的代码。将代码作为二进制包分发是一种常见的做法,因为大多数人通常一开始很少或根本不需要编译库——当然,假设库中没有太多错误,等等。

为使用SDL而构建的应用程序链接到开发人员包中的库,并在运行时分发版中使用.DLL或.SO文件(通常也包含在开发人员分发版中,使其成为"一次下载而不是两次下载")。这与编译器附带的C或C++运行库的发行版中没有(通常)printfcout的源代码完全相同。

相关内容

最新更新