• 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
20- libc: provides thread-related functions and a majority of standard functions.
21
22
23- libm: provides basic mathematical functions.
24
25
26- libdl: provides functions related to dynamic linking, such as **dlopen**.
27
28
29**Version**
30
311.2.0
32
33**Capabilities**
34
35C 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.
36
37**musl**
38
39[Native API Symbols Not Exported](musl-peculiar-symbol.md)
40
41## libc++
42
43[libc++](https://libcxx.llvm.org/) is an implementation of the C++ standard library.
44
45**Version**
46
4710.0.1
48
49**Capabilities**
50
51The C++11 and C++14 standards are supported, and the C++17 and C++20 standards are on the way.
52
53## OpenSL ES
54
55[OpenGL ES](https://www.khronos.org/opengles/) is an embedded, cross-platform audio processing library.
56
57**Capabilities**
58
59[OpenSL ES Interfaces Supported by Native APIs](../third_party_opensles/opensles.md)
60
61## zlib
62
63[zlib](https://zlib.net/) is a general data compression library implemented in C/C++.
64
65## EGL
66
67EGL is an interface between Khronos rendering APIs (such as OpenGL ES and OpenVG) and the underlying native window system. OpenHarmony supports EGL.
68
69**Symbols Exported from the Standard Library**
70
71[EGL Symbols Exported from Native APIs](../third_party_opengl/egl-symbol.md)
72
73## OpenGL ES
74
75OpenGL 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.
76
77**Capabilities**
78
79OpenGL ES 3.0
80
81**Symbols Exported from the Standard Library**
82
83[OpenGL ES 3.0 Symbols Exported from Native APIs](../third_party_opengl/openglesv3-symbol.md)
84