Difference between revisions of "Third-party libraries and tools"
From KlayGE
Gongminmin (Talk | contribs) |
Gongminmin (Talk | contribs) |
||
Line 49: | Line 49: | ||
= List = | = List = | ||
− | Here is a full list of libraries under External folder. | + | Here is a full list of libraries under External folder in 4.14. |
{| class="wikitable" | {| class="wikitable" | ||
Line 90: | Line 90: | ||
|- | |- | ||
| [https://github.com/xceedsoftware/wpftoolkit wpftoolkit] || 2.8 || Yes || {{No}}Yes || No || Yes | | [https://github.com/xceedsoftware/wpftoolkit wpftoolkit] || 2.8 || Yes || {{No}}Yes || No || Yes | ||
+ | |} | ||
+ | |||
+ | Also, in develop branch, most external libraries are downloaded via git. They are listed below. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Name !! Version !! CMake Provided !! Need to Build | ||
+ | |- | ||
+ | | [http://7-zip.org 7z] || {{No}}Forked git (Fixes for UWP and Android) || No || Yes | ||
+ | |- | ||
+ | | [https://developer.android.com/ndk/downloads/index.html android_native_app_glue] || {{No}}Patched 16B || No || No | ||
+ | |- | ||
+ | | [https://github.com/assimp/assimp assimp] || git || Yes || Yes | ||
+ | |- | ||
+ | | [http://www.boost.org/ boost] || Slimmed 1.68.0 || Yes, but not used || Yes | ||
+ | |- | ||
+ | | [https://github.com/jarro2783/cxxopts cxxopts] || git || Yes || No | ||
+ | |- | ||
+ | | [http://freeimage.sourceforge.net/ FreeImage] || {{No}}Forked git (Fixes C++17, MinGW, and ARM) || No || Yes | ||
+ | |- | ||
+ | | [https://www.freetype.org/ freetype] || git || Yes || Yes | ||
+ | |- | ||
+ | | [https://github.com/google/googletest googletest] || git || Yes || Yes | ||
+ | |- | ||
+ | | [https://github.com/xiph/ogg libogg] || git || Yes || Yes | ||
+ | |- | ||
+ | | [https://github.com/xiph/vorbis libvorbis] || git || Yes || Yes | ||
+ | |- | ||
+ | | [https://github.com/memononen/nanosvg nanosvg] || git || No || No | ||
+ | |- | ||
+ | | [https://github.com/kcat/openal-soft openal-soft] || git || Yes || Yes | ||
+ | |- | ||
+ | | [https://github.com/python/cpython Python] || {{No}}Forked git (Fixes for UWP and MinGW) || No || Yes | ||
+ | |- | ||
+ | | [https://github.com/python-cmake-buildsystem/python-cmake-buildsystem python-cmake-buildsystem] || {{No}}Forked git (Fixes for Android, iOS, 3.7, and MinGW) || Yes || Yes | ||
+ | |- | ||
+ | | [https://github.com/Tencent/rapidjson rapidjson] || git || Yes || No | ||
+ | |- | ||
+ | | [http://rapidxml.sourceforge.net/ rapidxml] || git || No || No | ||
+ | |- | ||
+ | | [https://github.com/gongminmin/UniversalDXSDK UniversalDXSDK] || N/A || No || No | ||
+ | |- | ||
+ | | [https://github.com/xceedsoftware/wpftoolkit wpftoolkit] || {{No}}Forked git (Change the output directories) || No || Yes | ||
+ | |- | ||
+ | | [https://github.com/madler/zlib zlib] || git || Yes || Yes | ||
|} | |} | ||
[[zh:第三方库和工具]] | [[zh:第三方库和工具]] | ||
[[ru:Сторонние библиотеки и инструменты]] | [[ru:Сторонние библиотеки и инструменты]] |
Revision as of 22:39, 8 February 2019
KlayGE's code depends on these following third-party libraries and tools. Since 3.12.0, the source code of these libraries are included in KlayGE. Users can run build_external.py to build and install them. Before running the building script, Python 2.7+ and CMake 3.4+ must be installed.
Contents
- 1 Core requires:
- 2 DevHelper requires:
- 3 D3D11 Rendering System and DSound Audio System require:
- 4 DShow Show System requires:
- 5 OggVorbis Audio Datasource requires:
- 6 OpenAL Audio System requires:
- 7 OpenGL Rendering System requires:
- 8 OpenGL ES Rendering System requires:
- 9 Python Script System requires:
- 10 Test requires:
- 11 KFontGen tool requires:
- 12 Notes
- 13 List
Core requires:
DevHelper requires:
- RapidJson git
D3D11 Rendering System and DSound Audio System require:
DShow Show System requires:
- Microsoft Windows SDK 10.0 comes with Visual Studio 2017, or
- Microsoft Windows SDK 10.0 comes with Visual Studio 2015, or
- Microsoft Windows SDK 8.1 comes with Visual Studio 2013
OggVorbis Audio Datasource requires:
OpenAL Audio System requires:
- OpenAL SDK 1.1
OpenGL Rendering System requires:
OpenGL ES Rendering System requires:
- Universal DX SDK
- Google ANGLE, or
- NVIDIA x86 Windows OpenGL ES 2.0 Emulator, or
- PowerVR Insider SDK v2.9, or
- ARM Mali OpenGL ES 2.0 Emulator v1.3
Python Script System requires:
- Python 3.5.1.
Test requires:
- Google Test 1.8.0。
KFontGen tool requires:
- FreeType 2.8.1.
Notes
As KlayGE uses VC Multi-threaded DLL runtime library, it needs ALL libs that linked to exes change to use Multi-threaded DLL runtime library (Project->Properties->Configuration Properties->C/C++->Code Generation->Runtime Library, select Multi-threaded Debug DLL/Multi-threaded DLL).
List
Here is a full list of libraries under External folder in 4.14.
Name | Version | Slimmed | Patched | CMake Provided | Need to Build |
---|---|---|---|---|---|
7z | 18.05 | Yes | Yes | No | Yes |
android_native_app_glue | 16B | No | Yes | No | No |
assimp | git | No | No | Yes | Yes |
boost | 1.68.0 | Yes | No | Yes, but not used | Yes |
cxxopts | git | No | No | Yes | No |
FreeImage | 3.18.0 | Yes | Yes | No | Yes |
freetype | 2.8.1 | Yes | No | Yes | Yes |
googletest | 1.8.0 | No | No | Yes | Yes |
libogg | git | No | No | Yes | Yes |
libvorbis | 1.3.6 | Yes | Yes | Yes | Yes |
nanosvg | git | No | No | No | No |
OpenALSDK | 1.1 | No | No | No | No |
Python | 3.5.1 | Yes | Yes | No | Yes |
python-cmake-buildsystem | N/A | Yes | Yes | Yes | Yes |
rapidjson | git | No | No | Yes | No |
rapidxml | 1.13 | No | Yes | No | No |
UniversalDXSDK | N/A | No | No | No | No |
wpftoolkit | 2.8 | Yes | Yes | No | Yes |
Also, in develop branch, most external libraries are downloaded via git. They are listed below.
Name | Version | CMake Provided | Need to Build |
---|---|---|---|
7z | Forked git (Fixes for UWP and Android) | No | Yes |
android_native_app_glue | Patched 16B | No | No |
assimp | git | Yes | Yes |
boost | Slimmed 1.68.0 | Yes, but not used | Yes |
cxxopts | git | Yes | No |
FreeImage | Forked git (Fixes C++17, MinGW, and ARM) | No | Yes |
freetype | git | Yes | Yes |
googletest | git | Yes | Yes |
libogg | git | Yes | Yes |
libvorbis | git | Yes | Yes |
nanosvg | git | No | No |
openal-soft | git | Yes | Yes |
Python | Forked git (Fixes for UWP and MinGW) | No | Yes |
python-cmake-buildsystem | Forked git (Fixes for Android, iOS, 3.7, and MinGW) | Yes | Yes |
rapidjson | git | Yes | No |
rapidxml | git | No | No |
UniversalDXSDK | N/A | No | No |
wpftoolkit | Forked git (Change the output directories) | No | Yes |
zlib | git | Yes | Yes |