使用代码而不将其编译到库中

时间:2010-07-02 13:20:51

标签: freetype

我的问题可能很愚蠢,但我需要从源代码中使用一个库,而不是先将它编译成库形式。有问题的工具是FreeType。这可能吗?

3 个答案:

答案 0 :(得分:2)

您可以将FreeType源代码分发中的所有文件添加到您自己的项目中,并尝试将它们一起编译。但是,如果我没记错的话,FreeType编译过程有点棘手。

将FreeType编译为静态库可能更容易,然后将您自己的程序与生成的库链接起来。如果这样做,您的可执行文件将不依赖于FreeType运行时库。

答案 1 :(得分:2)

它叫做捆绑:不是用一些库的JAR文件运送你的代码,或者甚至只需要你的INSTALL文档中的库,你只需将源代码复制到你的项目中并建立它由您的构建系统而不是预先构建使用它。它可能需要稍微调整您的构建系统,并且您需要确保您有权以源代码形式重新分发库,但它有时是有意义的。

MPlayer用ffmpeg做了很长时间,而XEN用Linux内核做了(从理论上讲,它们发布补丁而不是整个内核树)。当然,缺点是你有效地分叉了库,并且除非你重新破解他们的代码并让它再次在你的项目中构建,否则不会得到任何代码更新。

答案 2 :(得分:0)

如果这是你的意思,你可以从http://freetype.sourceforge.net获取FreeType的源代码。