diff --git a/README.md b/README.md index f1532d53b6..76dbe4b150 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ This is edX, a platform for online higher education. The project is primarily written in [Python](http://python.org/), using the -[Django](https://www.djangoproject.com/) framework. We also use some +[Django](https://www.djangoproject.com/) framework. We also use some [Ruby](http://www.ruby-lang.org/) and some [NodeJS](http://nodejs.org/). Installation @@ -77,6 +77,7 @@ environment), and Node has a library installer called Once you've got your languages and virtual environments set up, install the libraries like so: + $ pip install -r pre-requirements.txt $ pip install -r requirements.txt $ bundle install $ npm install diff --git a/pre-requirements.txt b/pre-requirements.txt index 7ecead0ce7..d39199a741 100644 --- a/pre-requirements.txt +++ b/pre-requirements.txt @@ -1,2 +1,10 @@ +# We use `scipy` in our project, which relies on `numpy`. `pip` apparently +# installs packages in a two-step process, where it will first try to build +# all packages, and then try to install all packages. As a result, if we simply +# added these packages to the top of `requirements.txt`, `pip` would try to +# build `scipy` before `numpy` has been installed, and it would fail. By +# separating this out into a `pre-requirements.txt` file, we can make sure +# that `numpy` is built *and* installed before we try to build `scipy`. + numpy==1.6.2 distribute>=0.6.28