0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-11-30 17:10:48 +01:00
mongodb/docs/building.md

133 lines
3.3 KiB
Markdown
Raw Normal View History

2009-11-19 16:49:34 +01:00
Building MongoDB
================
To build MongoDB, you will need:
* A modern C++ compiler. One of the following is required.
2017-05-16 17:12:05 +02:00
* GCC 5.4.0 or newer
* Clang 3.7 (or Apple XCode 7.0.2 Clang) or newer
* Visual Studio 2015 Update 2 or newer (See Windows section below for details)
* Python 2.7.x and Pip modules:
* pyyaml
* typing
MongoDB supports the following architectures: arm64, ppc64le, s390x, and x86-64.
More detailed platform instructions can be found below.
MongoDB Tools
--------------
The MongoDB command line tools (mongodump, mongorestore, mongoimport, mongoexport, etc)
have been rewritten in [Go](http://golang.org/) and are no longer included in this repository.
The source for the tools is now available at [mongodb/mongo-tools](https://github.com/mongodb/mongo-tools).
2017-05-16 17:12:05 +02:00
Python Prerequisites
---------------
In order to build MongoDB, Python 2.7.x is required, and several Python modules. To install
the required Python modules, run:
$ pip2 install -r buildscripts/requirements.txt
Note: If the `pip2` command is not available, `pip` without a suffix may be the pip command
associated with Python 2.7.x.
SCons
2010-07-13 23:45:22 +02:00
---------------
2017-05-16 17:12:05 +02:00
For detail information about building, please see [the build manual](https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source)
2009-11-19 16:49:34 +01:00
If you want to build everything (mongod, mongo, tests, etc):
2009-11-19 16:49:34 +01:00
2017-05-16 17:12:05 +02:00
$ python2 buildscripts/scons.py all
2009-11-19 16:49:34 +01:00
2010-07-13 23:45:22 +02:00
If you only want to build the database:
2009-11-19 16:49:34 +01:00
2017-05-16 17:12:05 +02:00
$ python2 buildscripts/scons.py scons
2010-07-13 23:45:22 +02:00
To install
2009-11-19 16:49:34 +01:00
2017-05-16 17:12:05 +02:00
$ python2 buildscripts/scons.py --prefix=/opt/mongo install
2009-11-19 16:49:34 +01:00
2010-07-14 17:27:02 +02:00
Please note that prebuilt binaries are available on [mongodb.org](http://www.mongodb.org/downloads) and may be the easiest way to get started.
2009-11-19 16:49:34 +01:00
SCons Targets
2010-07-13 23:45:22 +02:00
--------------
* mongod
* mongos
* mongo
* core (includes mongod, mongos, mongo)
* all
2009-11-19 16:49:34 +01:00
Windows
2010-07-13 23:45:22 +02:00
--------------
2009-11-19 16:49:34 +01:00
2017-05-16 17:12:05 +02:00
See [the windows build manual](https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source#windows-specific-instructions)
2009-11-19 16:49:34 +01:00
Build requirements:
2017-05-16 17:12:05 +02:00
* Visual Studio 2015 Update 2 or newer
* Python 2.7, ActiveState ActivePython 2.7.x Community Edition for Windows is recommended
2017-05-16 17:12:05 +02:00
If using VS 2015 Update 3, a hotfix is required to build the unit tests. See
https://support.microsoft.com/en-us/help/3207317/visual-c-optimizer-fixes-for-visual-studio-2015-update-3
for details.
2009-11-19 16:49:34 +01:00
Or download a prebuilt binary for Windows at www.mongodb.org.
2009-11-19 16:49:34 +01:00
Debian/Ubuntu
2010-07-13 23:45:22 +02:00
--------------
To install dependencies on Debian or Ubuntu systems:
2017-05-16 17:12:05 +02:00
# aptitude install build-essential
# aptitude install libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libboost-thread-dev
To run tests as well, you will need PyMongo:
# aptitude install python-pymongo
2010-05-02 01:52:44 +02:00
OS X
2010-07-13 23:45:22 +02:00
--------------
Using [Homebrew](http://brew.sh):
$ brew install mongodb
2010-05-02 01:52:44 +02:00
Using [MacPorts](http://www.macports.org):
2014-02-05 18:04:52 +01:00
$ sudo port install mongodb
2010-05-02 01:52:44 +02:00
FreeBSD
2010-07-13 23:45:22 +02:00
--------------
Install the following ports:
* devel/libexecinfo
* lang/clang38
* lang/python
Optional Components if you want to use system libraries instead of the libraries included with MongoDB
* archivers/snappy
* lang/v8
* devel/boost
2010-07-13 23:45:22 +02:00
* devel/pcre
2009-11-19 16:49:34 +01:00
Add `CC=clang38 CXX=clang++38` to the `scons` options, when building.
OpenBSD
--------------
Install the following ports:
* devel/libexecinfo
* lang/gcc
* lang/python
2009-11-19 16:49:34 +01:00
2010-07-13 23:45:22 +02:00
Special Build Notes
--------------
* [open solaris on ec2](building.opensolaris.ec2.md)