| OLD | NEW |
| 1 # Linux Build Instructions — Prerequisites | 1 # Linux Build Instructions — Prerequisites |
| 2 | 2 |
| 3 This page describes system requirements for building Chromium on Linux. | 3 This page describes system requirements for building Chromium on Linux. |
| 4 | 4 |
| 5 [TOC] | 5 [TOC] |
| 6 | 6 |
| 7 ## System Requirements | 7 ## System Requirements |
| 8 | 8 |
| 9 ### Linux distribution | 9 ### Linux distribution |
| 10 | 10 |
| (...skipping 27 matching lines...) Expand all Loading... |
| 38 | 38 |
| 39 ### Depot tools | 39 ### Depot tools |
| 40 | 40 |
| 41 Before setting up the environment, make sure you install the | 41 Before setting up the environment, make sure you install the |
| 42 [depot tools](http://dev.chromium.org/developers/how-tos/depottools) first. | 42 [depot tools](http://dev.chromium.org/developers/how-tos/depottools) first. |
| 43 | 43 |
| 44 ## Software Requirements | 44 ## Software Requirements |
| 45 | 45 |
| 46 ### Ubuntu Setup | 46 ### Ubuntu Setup |
| 47 | 47 |
| 48 Run [build/install-build-deps.sh](build/install-build-deps.sh) The script only | 48 Run [build/install-build-deps.sh](/build/install-build-deps.sh) The script only |
| 49 supports current releases as listed on https://wiki.ubuntu.com/Releases. | 49 supports current releases as listed on https://wiki.ubuntu.com/Releases. |
| 50 | 50 |
| 51 Building on Linux requires software not usually installed with the | 51 Building on Linux requires software not usually installed with the |
| 52 distributions. | 52 distributions. |
| 53 | 53 |
| 54 The script attempts to automate installing the required software. This script is | 54 The script attempts to automate installing the required software. This script is |
| 55 used to set up the canonical builders, and as such is the most up to date | 55 used to set up the canonical builders, and as such is the most up to date |
| 56 reference for the required prerequisites. | 56 reference for the required prerequisites. |
| 57 | 57 |
| 58 ### Other distributions | 58 ### Other distributions |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 dbus-devel alsa-lib-devel libX11-devel expat-devel bzip2-devel \ | 91 dbus-devel alsa-lib-devel libX11-devel expat-devel bzip2-devel \ |
| 92 dbus-glib-devel elfutils-libelf-devel libjpeg-devel \ | 92 dbus-glib-devel elfutils-libelf-devel libjpeg-devel \ |
| 93 mesa-libGLU-devel libXScrnSaver-devel \ | 93 mesa-libGLU-devel libXScrnSaver-devel \ |
| 94 libgnome-keyring-devel cups-devel libXtst-devel libXt-devel pam-devel' | 94 libgnome-keyring-devel cups-devel libXtst-devel libXt-devel pam-devel' |
| 95 ``` | 95 ``` |
| 96 | 96 |
| 97 The msttcorefonts packages can be obtained by following the instructions present | 97 The msttcorefonts packages can be obtained by following the instructions present |
| 98 here: http://www.fedorafaq.org/#installfonts | 98 here: http://www.fedorafaq.org/#installfonts |
| 99 | 99 |
| 100 For the optional packages: | 100 For the optional packages: |
| 101 |
| 101 * php-cgi is provided by the php-cli package | 102 * php-cgi is provided by the php-cli package |
| 102 * wdiff doesn't exist in Fedora repositories, a possible alternative would be | 103 * wdiff doesn't exist in Fedora repositories, a possible alternative would be |
| 103 dwdiff | 104 dwdiff |
| 104 * sun-java6-fonts doesn't exist in Fedora repositories, needs investigating | 105 * sun-java6-fonts doesn't exist in Fedora repositories, needs investigating |
| 105 | 106 |
| 106 su -c 'yum install httpd mod_ssl php php-cli wdiff' | 107 su -c 'yum install httpd mod_ssl php php-cli wdiff' |
| 107 | 108 |
| 108 | |
| 109 #### Arch Linux Setup | 109 #### Arch Linux Setup |
| 110 | 110 |
| 111 Most of these packages are probably already installed since they're often used, | 111 Most of these packages are probably already installed since they're often used, |
| 112 and the parameter --needed ensures that packages up to date are not reinstalled. | 112 and the parameter --needed ensures that packages up to date are not reinstalled. |
| 113 | 113 |
| 114 ```shell | 114 ```shell |
| 115 $ sudo pacman -S --needed python perl gcc gcc-libs bison flex gperf pkgconfig \ | 115 sudo pacman -S --needed python perl gcc gcc-libs bison flex gperf pkgconfig \ |
| 116 nss alsa-lib gconf glib2 gtk2 nspr ttf-ms-fonts freetype2 cairo dbus \ | 116 nss alsa-lib gconf glib2 gtk2 nspr ttf-ms-fonts freetype2 cairo dbus \ |
| 117 libgnome-keyring | 117 libgnome-keyring |
| 118 ``` | 118 ``` |
| 119 | 119 |
| 120 For the optional packages on Arch Linux: | 120 For the optional packages on Arch Linux: |
| 121 | 121 |
| 122 * php-cgi is provided with pacman | 122 * php-cgi is provided with pacman |
| 123 * wdiff is not in the main repository but dwdiff is. You can get wdiff in | 123 * wdiff is not in the main repository but dwdiff is. You can get wdiff in |
| 124 AUR/yaourt | 124 AUR/yaourt |
| 125 * sun-java6-fonts do not seem to be in main repository or AUR. | 125 * sun-java6-fonts do not seem to be in main repository or AUR. |
| 126 | 126 |
| 127 For a successful build, add `'remove_webcore_debug_symbols': 1,` to the | 127 For a successful build, add `'remove_webcore_debug_symbols': 1,` to the |
| 128 variables-object in include.gypi. Tested on 64-bit Arch Linux. | 128 variables-object in include.gypi. Tested on 64-bit Arch Linux. |
| 129 | 129 |
| 130 TODO: Figure out how to make it build with the WebCore debug symbols. `make V=1` | 130 TODO: Figure out how to make it build with the WebCore debug symbols. `make V=1` |
| 131 can be useful for solving the problem. | 131 can be useful for solving the problem. |
| 132 | 132 |
| 133 #### Mandriva setup | 133 #### Mandriva setup |
| 134 | 134 |
| 135 ```shell | 135 ```shell |
| 136 urpmi lib64fontconfig-devel lib64alsa2-devel lib64dbus-1-devel \ | 136 urpmi lib64fontconfig-devel lib64alsa2-devel lib64dbus-1-devel \ |
| 137 lib64GConf2-devel lib64freetype6-devel lib64atk1.0-devel lib64gtk+2.0_0-devel \ | 137 lib64GConf2-devel lib64freetype6-devel lib64atk1.0-devel lib64gtk+2.0_0-devel \ |
| 138 lib64pango1.0-devel lib64cairo-devel lib64nss-devel lib64nspr-devel g++ python \ | 138 lib64pango1.0-devel lib64cairo-devel lib64nss-devel lib64nspr-devel g++ python \ |
| 139 perl bison flex subversion gperf | 139 perl bison flex subversion gperf |
| 140 ``` | 140 ``` |
| 141 | 141 |
| 142 *** note |
| 142 Note 1: msttcorefonts are not available, you will need to build your own (see | 143 Note 1: msttcorefonts are not available, you will need to build your own (see |
| 143 instructions, not hard to do, see | 144 instructions, not hard to do, see |
| 144 [mandriva_msttcorefonts.md](mandriva_msttcorefonts.md)) or use drakfont to | 145 [mandriva_msttcorefonts.md](mandriva_msttcorefonts.md)) or use drakfont to |
| 145 import the fonts from a windows installation | 146 import the fonts from a windows installation |
| 147 *** |
| 146 | 148 |
| 149 *** note |
| 147 Note 2: these packages are for 64 bit, to download the 32 bit packages, | 150 Note 2: these packages are for 64 bit, to download the 32 bit packages, |
| 148 substitute lib64 with lib | 151 substitute lib64 with lib |
| 152 *** |
| 149 | 153 |
| 154 *** note |
| 150 Note 3: some of these packages might not be explicitly necessary as they come as | 155 Note 3: some of these packages might not be explicitly necessary as they come as |
| 151 dependencies, there is no harm in including them however. | 156 dependencies, there is no harm in including them however. |
| 157 *** |
| 152 | 158 |
| 159 *** note |
| 153 Note 4: to build on 64 bit systems use, instead of | 160 Note 4: to build on 64 bit systems use, instead of |
| 154 `GYP_DEFINES=target_arch=x64`, as mentioned in the general notes for building on | 161 `GYP_DEFINES=target_arch=x64`, as mentioned in the general notes for building on |
| 155 64 bit: | 162 64 bit: |
| 156 | 163 |
| 157 ```shell | 164 ```shell |
| 158 export GYP_DEFINES="target_arch=x64" | 165 export GYP_DEFINES="target_arch=x64" |
| 159 gclient runhooks --force | 166 gclient runhooks --force |
| 160 ``` | 167 ``` |
| 168 *** |
| 161 | 169 |
| 162 #### Gentoo setup | 170 #### Gentoo setup |
| 163 | 171 |
| 164 emerge www-client/chromium | 172 emerge www-client/chromium |
| OLD | NEW |