xref: /spdk/scripts/pkgdep/debian.sh (revision b3bec07939ebe2ea2e0c43931705d32aa9e06719)
1#!/usr/bin/env bash
2#  SPDX-License-Identifier: BSD-3-Clause
3#  Copyright (C) 2020 Intel Corporation
4#  Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES.
5#  All rights reserved.
6#  Copyright (c) 2022 Dell Inc, or its subsidiaries.
7#
8
9apt-get install -y gcc g++ make libcunit1-dev libaio-dev libssl-dev libjson-c-dev libcmocka-dev uuid-dev libiscsi-dev
10apt-get install -y libncurses5-dev libncursesw5-dev python3 python3-pip python3-dev
11pip3 install ninja
12pip3 install meson
13pip3 install pyelftools
14pip3 install ijson
15pip3 install python-magic
16pip3 install grpcio
17pip3 install grpcio-tools
18pip3 install pyyaml
19# Additional dependencies for SPDK CLI
20apt-get install -y python3-configshell-fb python3-pexpect
21
22# Additional dependencies for DPDK
23apt-get install -y nasm libnuma-dev
24# Additional dependencies for ISA-L used in compression
25apt-get install -y autoconf automake libtool help2man
26# Additional dependencies for USDT
27apt-get install -y systemtap-sdt-dev
28if [[ $INSTALL_DEV_TOOLS == "true" ]]; then
29	# Tools for developers
30	apt-get install -y git astyle lcov clang sg3-utils pciutils shellcheck \
31		abigail-tools bash-completion ruby-dev pycodestyle
32	# Additional dependencies for nvmf performance test script
33	apt-get install -y python3-paramiko
34fi
35if [[ $INSTALL_PMEM == "true" ]]; then
36	# Additional dependencies for building pmem based backends
37	apt-get install -y libpmem-dev libpmemblk-dev libpmemobj-dev
38fi
39if [[ $INSTALL_FUSE == "true" ]]; then
40	# Additional dependencies for FUSE and NVMe-CUSE
41	apt-get install -y libfuse3-dev
42fi
43if [[ $INSTALL_RBD == "true" ]]; then
44	# Additional dependencies for RBD bdev in NVMe over Fabrics
45	apt-get install -y librados-dev librbd-dev
46fi
47if [[ $INSTALL_RDMA == "true" ]]; then
48	# Additional dependencies for RDMA transport in NVMe over Fabrics
49	apt-get install -y libibverbs-dev librdmacm-dev
50fi
51if [[ $INSTALL_DOCS == "true" ]]; then
52	# Additional dependencies for building docs
53	apt-get install -y doxygen mscgen graphviz
54fi
55# Additional dependencies for Avahi
56if [[ $INSTALL_AVAHI == "true" ]]; then
57	# Additional dependencies for Avahi
58	apt-get install -y libavahi-client-dev
59fi
60