SFML not linking statically to openal32 (links statically to all other dependencies)

别说谁变了你拦得住时间么 提交于 2019-12-05 05:49:19

I am not a lawyer (and I did not stay at a popular hotel chain last night).

The OpenAL implementation they are using is licensed under the GNU Library General Public License (LGPL), version 2. LGPL v2 requires that:

If you link a program with the library, you must provide complete object files to the recipients so that they can relink them with the library, after making changes to the library and recompiling it. And you must show them these terms so they know their rights.

The easiest way to allow users to relink a closed-source game with a modified OpenAL library, is to make that game link dynamically with the openal32.dll. That way, they can simply swap out the openal32.dll with a modified one, and place it beside your game executable.

As for this part of the license:

And you must show them these terms so they know their rights.

Simply inform your users that your game uses OpenAL, and somehow give them access to the body of the LGPL v2 text.

You may distribute the openal32.dll with your game, under these conditions:

For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code.

That can be met by simply informing your users that your game uses OpenAL, and providing a link to where they can download the source code.

To inform your users of their rights regarding OpenAL, you could do it in an "About" page within the game iteself, or in an preface/appendix of the distributed game manual. For example:

This game uses the following open-source software:

And while you're informing your users of OpenAL, you could also volunteer to give attribution to other open-source libraries that your game uses, such as SFML.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!