VirtualBox

source: vbox/trunk/tools/bin/prerequisites-deb.sh@ 93622

Last change on this file since 93622 was 93115, checked in by vboxsync, 3 years ago

scm --update-copyright-year

  • Property svn:eol-style set to LF
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 2.8 KB
Line 
1#!/bin/sh
2# @file
3## $Id: prerequisites-deb.sh 93115 2022-01-01 11:31:46Z vboxsync $
4# Fetches prerequisites for Debian based GNU/Linux systems.
5#
6
7#
8# Copyright (C) 2018-2022 Oracle Corporation
9#
10# This file is part of VirtualBox Open Source Edition (OSE), as
11# available from http://www.virtualbox.org. This file is free software;
12# you can redistribute it and/or modify it under the terms of the GNU
13# General Public License (GPL) as published by the Free Software
14# Foundation, in version 2 as it comes in the "COPYING" file of the
15# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
16# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
17#
18
19# What this script does:
20usage_msg="\
21Usage: `basename ${0}` [--with-docs]
22
23Install the dependencies needed for building VirtualBox on an deb-based Linux
24system. Additional distributions will be added as needed. There are no plans
25to add support for or to accept patches for distributions we do not package.
26The \`--with-docs\' parameter is to install the packages needed for building
27documentation. It will also be implemented per distribution as needed."
28
29# To repeat: there are no plans to add support for or to accept patches
30# for distributions we do not package.
31
32usage()
33{
34 echo "${usage_msg}"
35 exit "${1}"
36}
37
38unset WITHDOCS
39
40while test -n "${1}"; do
41 case "${1}" in
42 --with-docs)
43 WITHDOCS=1
44 shift ;;
45 -h|--help)
46 usage 0 ;;
47 *)
48 echo "Unknown parameter ${1}" >&2
49 usage 1 ;;
50 esac
51done
52
53export LC_ALL=C
54PATH=/sbin:/usr/sbin:$PATH
55read DEBVER < /etc/debian_version
56
57apt-get update
58# We deal with different distributions having different lists of prerequisites
59# by splitting them into several apt commands. Some will fail on some
60# distributions, but at the end everything needed should be there.
61apt-get install -y chrpath g++ make wget iasl libidl-dev libsdl1.2-dev \
62 libsdl-ttf2.0-dev libpam0g-dev libssl-dev libpulse-dev \
63 libasound2-dev xsltproc libxml2-dev libxml2-utils unzip \
64 libxrandr-dev libxinerama-dev libcap-dev python-dev \
65 libxmu-dev libxcursor-dev libcurl4-openssl-dev libdevmapper-dev \
66 libvpx-dev g++-multilib libopus-dev || true
67# 32-bits libs for 64-bit installs.
68case `uname -m` in
69 x86_64|amd64|AMD64)
70 apt-get install -y libc6-dev-i386 lib32gcc1 lib32stdc++6 lib32z1-dev || true
71 ;;
72esac
73# Only install Qt5 on recent distributions
74case "${DEBVER}" in
757*|8*|jessie*|stretch*) ;;
76*)
77 apt-get install -y qttools5-dev-tools libqt5opengl5-dev \
78 libqt5x11extras5-dev || true ;;
79esac
80test -n "${WITHDOCS}" &&
81 apt-get install -y doxygen texlive texlive-latex-extra texlive-fonts-extra
82# Ubuntu only
83grep Ubuntu /etc/lsb-release 2>/dev/null >&2 &&
84 apt-get install -y linux-headers-generic
85# apt-get install wine linux-headers-`uname -r` # Not for chroot installs.
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette