]> git.proxmox.com Git - ceph.git/blame - ceph/README.windows.rst
import 15.2.2 octopus source
[ceph.git] / ceph / README.windows.rst
CommitLineData
9f95a23c
TL
1About
2-----
3
4Ceph Windows support is currently a work in progress. For now, the main focus
5is the client side, allowing Windows hosts to consume rados, rbd and cephfs
6resources.
7
8Building
9--------
10
11At the moment, mingw gcc is the only supported compiler for building ceph
12components for Windows. Support for msvc and clang will be added soon.
13
14`win32_build.sh`_ can be used for cross compiling Ceph and its dependencies.
15It may be called from a Linux environment, including Windows Subsystem for
16Linux. MSYS2 and CygWin may also work but those weren't tested.
17
18.. _win32_build.sh: win32_build.sh
19
20The script accepts the following flags:
21
22============ =============================== ===============================
23Flag Description Default value
24============ =============================== ===============================
25CEPH_DIR The Ceph source code directory. The same as the script.
26BUILD_DIR The directory where the $CEPH_DIR/build
27 generated artifacts will be
28 placed.
29DEPS_DIR The directory where the Ceph $CEPH_DIR/build.deps
30 dependencies will be built.
31NUM_WORKERS The number of workers to use The number of vcpus
32 when building Ceph. available
33NINJA_BUILD Use Ninja instead of make.
34CLEAN_BUILD Clean the build directory.
35SKIP_BUILD Run cmake without actually
36 performing the build.
37============ =============================== ===============================
38
39Current status
40--------------
41
42The rados and rbd binaries and libs compile successfully and can be used on
43Windows, successfully connecting to the cluster and consuming pools.
44
45The libraries have to be built statically at the moment. The reason is that
46there are a few circular library dependencies or unspecified dependencies,
47which isn't supported when building DLLs. This mostly affects ``cls`` libraries.
48
49A significant number of tests from the ``tests`` directory have been port,
50providing adequate coverage.