• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Native Standard Libraries Supported by OpenHarmony
2
3## Overview
4
5**Table 1** Standard libraries supported by OpenHarmony
6
7| Library     | Description                                                        |
8| :-------- | :----------------------------------------------------------- |
9| C standard library  | C11 standard library implemented by [libc, libm, and libdl](https://en.cppreference.com/w/c/header).      |
10| C++ standard library ([libc++](https://libcxx.llvm.org/))| An implementation of the C++ standard library.  |
11| Open Sound Library for Embedded Systems ([OpenSL ES](https://www.khronos.org/registry/OpenSL-ES/))| An embedded, cross-platform audio processing library.|
12| [zlib](https://zlib.net/)    | A general data compression library implemented in C/C++.|
13| [EGL](https://www.khronos.org/egl/)  | A standard software interface between rendering APIs and the underlying native window system.|
14| Open Graphics Library for Embedded Systems ([OpenGL ES](https://www.khronos.org/opengles/))| A cross-platform software interface for rendering 3D graphics on embedded and mobile systems.|
15
16## C Standard Library
17
18The C standard library is a C11 standard library implemented by:
19
20libc: provides thread-related functions and a majority of standard functions.
21
22libm: provides basic mathematical functions.
23
24libdl: provides functions related to dynamic linking, such as **dlopen**.
25
26**Version**
27
281.2.0
29
30**Capabilities**
31
32C standard library includes a set of header files in accordance with standard C and provides common functions, such as the functions related to input/output (I/O) and string control.
33
34**<font size=5>musl</font>**
35
36[Native API Symbols Not Exported](musl-peculiar-symbol.md)
37
38## libc++
39
40[libc++](https://libcxx.llvm.org/) is an implementation of the C++ standard library.
41
42**Version**
43
4410.0.1
45
46**Capabilities**
47
48The C++11 and C++14 standards are supported, and the C++17 and C++20 standards are on the way.
49
50## OpenSL ES
51
52[OpenSL ES](https://www.khronos.org/registry/OpenSL-ES/) is an embedded, cross-platform audio processing library.
53
54## zlib
55
56[zlib](https://zlib.net/) is a general data compression library implemented in C/C++.
57
58## EGL
59
60EGL is an interface between Khronos rendering APIs (such as OpenGL ES and OpenVG) and the underlying native window system. OpenHarmony supports EGL.
61
62**Symbols Exported from the Standard Library**
63
64[EGL Symbols Exported from Native APIs](../third_party_opengl/egl-symbol.md)
65
66## OpenGL ES
67
68OpenGL is a cross-platform software interface for 3D graphics processing. [OpenGL ES](https://www.khronos.org/opengles/) is a OpenGL specification for embedded devices. OpenHarmony supports OpenGL ES 3.0.
69
70**Capabilities**
71
72OpenGL ES 3.0
73
74**Symbols Exported from the Standard Library**
75
76[OpenGL ES 3.0 Symbols Exported from Native APIs](../third_party_opengl/openglesv3-symbol.md)
77