Difference between revisions of "第三方库和工具"
From KlayGE
Gongminmin (Talk | contribs) |
Gongminmin (Talk | contribs) |
||
Line 4: | Line 4: | ||
*[http://www.boost.org/ Boost] 1.68.0。其中只有一部分被[[使用到的boost库|使用到]]。 | *[http://www.boost.org/ Boost] 1.68.0。其中只有一部分被[[使用到的boost库|使用到]]。 | ||
*[http://rapidxml.sourceforge.net/ RapidXml] 1.13。 | *[http://rapidxml.sourceforge.net/ RapidXml] 1.13。 | ||
− | *[http://www.7-zip.org/ 7-zip] | + | *[http://www.7-zip.org/ 7-zip] 18.05。 |
== DevHelper需要:== | == DevHelper需要:== | ||
Line 55: | Line 55: | ||
! 名字 !! 版本 !! 精简过 !! 打过补丁 !! 提供了CMake !! 需要编译 | ! 名字 !! 版本 !! 精简过 !! 打过补丁 !! 提供了CMake !! 需要编译 | ||
|- | |- | ||
− | | [http://7-zip.org 7z] || 18.05 || 是 || | + | | [http://7-zip.org 7z] || 18.05 || 是 || {{No}}是 || 否 || 是 |
|- | |- | ||
− | | [https://developer.android.com/ndk/downloads/index.html android_native_app_glue] || 16B || 否 || | + | | [https://developer.android.com/ndk/downloads/index.html android_native_app_glue] || 16B || 否 || {{No}}是 || 否 || 否 |
|- | |- | ||
| [https://github.com/assimp/assimp assimp] || git || 否 || 否 || 是 || 是 | | [https://github.com/assimp/assimp assimp] || git || 否 || 否 || 是 || 是 | ||
|- | |- | ||
− | | [http://www.boost.org/ boost] || 1.66.0 || 是 || | + | | [http://www.boost.org/ boost] || 1.66.0 || 是 || 否 || 是,但没用到 || 是 |
|- | |- | ||
| [https://github.com/jarro2783/cxxopts cxxopts] || git || 否 || 否 || 是 || 否 | | [https://github.com/jarro2783/cxxopts cxxopts] || git || 否 || 否 || 是 || 否 | ||
|- | |- | ||
− | | [http://freeimage.sourceforge.net/ FreeImage] || 3.18.0 || 是 || 是 || 否 || 是 | + | | [http://freeimage.sourceforge.net/ FreeImage] || 3.18.0 || 是 || {{No}}是 || 否 || 是 |
|- | |- | ||
| [https://www.freetype.org/ freetype] || 2.8.1 || 是 || 否 || 是 || 是 | | [https://www.freetype.org/ freetype] || 2.8.1 || 是 || 否 || 是 || 是 | ||
Line 73: | Line 73: | ||
| [https://github.com/xiph/ogg libogg] || git || 否 || 否 || 是 || 是 | | [https://github.com/xiph/ogg libogg] || git || 否 || 否 || 是 || 是 | ||
|- | |- | ||
− | | [https://github.com/xiph/vorbis libvorbis] || 1.3.6 || 是 || 是 || 是 || 是 | + | | [https://github.com/xiph/vorbis libvorbis] || 1.3.6 || 是 || {{No}}是 || 是 || 是 |
|- | |- | ||
| [https://github.com/memononen/nanosvg nanosvg] || git || 否 || 否 || 否 || 否 | | [https://github.com/memononen/nanosvg nanosvg] || git || 否 || 否 || 否 || 否 | ||
Line 79: | Line 79: | ||
| [http://www.openal.org/ OpenALSDK] || 1.1 || 否 || 否 || 否 || 否 | | [http://www.openal.org/ OpenALSDK] || 1.1 || 否 || 否 || 否 || 否 | ||
|- | |- | ||
− | | [https://www.python.org/ Python] || 3.5.1 || 是 || 是 || 否 || 是 | + | | [https://www.python.org/ Python] || 3.5.1 || 是 || {{No}}是 || 否 || 是 |
|- | |- | ||
− | | [https://github.com/python-cmake-buildsystem/python-cmake-buildsystem python-cmake-buildsystem] || N/A || 是 || 是 || 是 || 是 | + | | [https://github.com/python-cmake-buildsystem/python-cmake-buildsystem python-cmake-buildsystem] || N/A || 是 || {{No}}是 || 是 || 是 |
|- | |- | ||
| [https://github.com/Tencent/rapidjson rapidjson] || git || 否 || 否 || 是 || 否 | | [https://github.com/Tencent/rapidjson rapidjson] || git || 否 || 否 || 是 || 否 | ||
|- | |- | ||
− | | [http://rapidxml.sourceforge.net/ rapidxml] || 1.13 || 否 || 是 || 否 || 否 | + | | [http://rapidxml.sourceforge.net/ rapidxml] || 1.13 || 否 || {{No}}是 || 否 || 否 |
|- | |- | ||
| [https://github.com/gongminmin/UniversalDXSDK UniversalDXSDK] || N/A || 否 || 否 || 否 || 否 | | [https://github.com/gongminmin/UniversalDXSDK UniversalDXSDK] || N/A || 否 || 否 || 否 || 否 | ||
|- | |- | ||
− | | [https://github.com/xceedsoftware/wpftoolkit wpftoolkit] || 2.8 || 是 || 是 || 否 || 是 | + | | [https://github.com/xceedsoftware/wpftoolkit wpftoolkit] || 2.8 || 是 || {{No}}是 || 否 || 是 |
|} | |} | ||
[[en:Third-party libraries and tools]] | [[en:Third-party libraries and tools]] | ||
[[ru:Сторонние библиотеки и инструменты]] | [[ru:Сторонние библиотеки и инструменты]] |
Revision as of 23:02, 25 November 2018
KlayGE的代码依赖于以下的第三方库和工具。从KlayGE 3.12开始,除了OpenGL ES的SDK,其他库和工具的代码将都包含在KlayGE中。用户可以通过调用build_external.py来编译和安装它们。当然,在执行编译脚本前需要事先安装Python 2.7+和CMake 3.4+。
Contents
Core需要:
DevHelper需要:
- RapidJson git
D3D11 Rendering System和DSound Audio System需要:
DShow Show System需要:
- Visual Studio 2017附带的Microsoft Windows SDK 10.0,或
- Visual Studio 2015附带的Microsoft Windows SDK 10.0,或
- Visual Studio 2013附带的Microsoft Windows SDK 8.1
OggVorbis Audio Datasource需要:
OpenAL Audio System需要:
- OpenAL SDK 1.1。
OpenGL Rendering System需要:
OpenGL ES Rendering System需要:
- Universal DX SDK
- Google ANGLE 或
- NVIDIA x86 Windows OpenGL ES 2.0 Emulator 或
- PowerVR Insider SDK v2.9 或
- ARM Mali OpenGL ES 2.0 Emulator v1.3
Python Script System需要:
- Python 3.5.1。
Test需要:
- Google Test 1.8.0。
KFontGen工具需要:
- FreeType 2.8.1。
注意事项
由于KlayGE在VC下使用的运行库是多线程的DLL,所以需要把所有连接到exe的lib的运行库改为多线程DLL(Project->Properties->Configuration Properties->C/C++->Code Generation->Runtime Library,选择Multi-threaded Debug DLL/Multi-threaded DLL)。
列表
这里External目录下包含库的完整列表。
名字 | 版本 | 精简过 | 打过补丁 | 提供了CMake | 需要编译 |
---|---|---|---|---|---|
7z | 18.05 | 是 | 是 | 否 | 是 |
android_native_app_glue | 16B | 否 | 是 | 否 | 否 |
assimp | git | 否 | 否 | 是 | 是 |
boost | 1.66.0 | 是 | 否 | 是,但没用到 | 是 |
cxxopts | git | 否 | 否 | 是 | 否 |
FreeImage | 3.18.0 | 是 | 是 | 否 | 是 |
freetype | 2.8.1 | 是 | 否 | 是 | 是 |
googletest | 1.8.0 | 否 | 否 | 是 | 是 |
libogg | git | 否 | 否 | 是 | 是 |
libvorbis | 1.3.6 | 是 | 是 | 是 | 是 |
nanosvg | git | 否 | 否 | 否 | 否 |
OpenALSDK | 1.1 | 否 | 否 | 否 | 否 |
Python | 3.5.1 | 是 | 是 | 否 | 是 |
python-cmake-buildsystem | N/A | 是 | 是 | 是 | 是 |
rapidjson | git | 否 | 否 | 是 | 否 |
rapidxml | 1.13 | 否 | 是 | 否 | 否 |
UniversalDXSDK | N/A | 否 | 否 | 否 | 否 |
wpftoolkit | 2.8 | 是 | 是 | 否 | 是 |