Repository: couchdb Updated Branches: refs/heads/master e07dfde40 -> b68e09439
Revise Windows installation readme Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/b68e0943 Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/b68e0943 Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/b68e0943 Branch: refs/heads/master Commit: b68e094392d11c319d40c7119f11f4f3f463bb42 Parents: 79d9aaf Author: Joan Touzet <woh...@atypical.net> Authored: Tue Jul 19 11:30:16 2016 -0400 Committer: Joan Touzet <woh...@atypical.net> Committed: Tue Jul 19 11:30:25 2016 -0400 ---------------------------------------------------------------------- INSTALL.Windows.md | 207 +++--------------------------------------------- 1 file changed, 12 insertions(+), 195 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/couchdb/blob/b68e0943/INSTALL.Windows.md ---------------------------------------------------------------------- diff --git a/INSTALL.Windows.md b/INSTALL.Windows.md index 7622eac..9ba84b7 100644 --- a/INSTALL.Windows.md +++ b/INSTALL.Windows.md @@ -1,204 +1,21 @@ Apache CouchDB INSTALL.Windows ============================== -For a high-level guide to Microsoft Windows. +Due to the complexity of building CouchDB on the Windows platform, +full build documentation and all necessary support files are in +the couchdb-glazier repository. -Troubleshooting ---------------- +Be sure to find the branch that matches the release you are building, for +example `couchdb_2.0`. -There is a troubleshooting guide: - - http://wiki.apache.org/couchdb/Troubleshooting - -There is a wiki for general documentation: - - http://wiki.apache.org/couchdb/ - -And some Windows-specific tips: - - http://wiki.apache.org/couchdb/Quirks_on_Windows - -There are collection of friendly mailing lists: - - http://couchdb.apache.org/community/lists.html - -Please work through these in order if you experience any problems. - -Dependencies +Build & Test ------------ +Once all dependencies are built and installed per the documentation in +couchdb-glazier, these commands will configure and build CouchDB: -You will need the following installed: - - * Erlang OTP (>=R16B03-1, =<18.1) (http://erlang.org/) - * ICU (>=4.*) (http://icu-project.org/) - * OpenSSL (>=0.9.8r) (http://www.openssl.org/) - * Mozilla SpiderMonkey (=1.8.5) (http://www.mozilla.org/js/spidermonkey/) - * libcurl (>=7.20) (http://curl.haxx.se/libcurl/) - * Cygwin (http://www.cygwin.com/) - * Microsoft SDK 7.0 or 7.1 (http://www.microsoft.com/en-us/download/details.aspx?id=8279) - * Python (>= 2.68) for docs (http://python.org/) - * Python Sphinx (>=1.1.3) (http://pypi.python.org/pypi/Sphinx) - -General Notes -------------- - - * When installing Cygwin, be sure to select all the `development` tools. - - * When installing Erlang, you must build it from source. - - * The CouchDB build requires a number of the Erlang build scripts. - - * All dependent libraries should be built with the same version of - microsoft SDK. - - * Do not try to link against libraries built with, or included in, - Cygwin or MingW. They are not compatible with the Erlang/OTP or CouchDB - build scripts. - - * ICU version 4.6 and later will build cleanly using MSBuild. - - * Python and Sphinx are optional for building the online documentation. - Use cygwin-provided Python and install Sphinx via easy_install or pip. - Further information is here http://pypi.python.org/pypi/setuptools#id4 - -Setting Up Cygwin ------------------ - -Before starting any Cygwin terminals, run: - - set CYGWIN=nontsec - -To set up your environment, run: - - [VS_BIN]/vcvars32.bat - -Replace [VS_BIN] with the path to your Visual Studio `bin` directory. - -You must check that: - - * The `which link` command points to the Microsoft linker. - - * The `which cl` command points to the Microsoft compiler. - - * The `which mc` command points to the Microsoft message compiler. - - * The `which mt` command points to the Microsoft manifest tool. - - * The `which nmake` command points to the Microsoft make tool. - -If you do not do this, the build may fail due to Cygwin ones found in `/usr/bin` -being used instead. - -Building Erlang ---------------- - -You must include Win32 OpenSSL, built statically from source. Use -exactly the same version as required by the Erlang/OTP build process. - -However, you can skip the GUI tools by running: - - echo "skipping gs" > lib/gs/SKIP - - echo "skipping ic" > lib/ic/SKIP - - echo "skipping jinterface" > lib/jinterface/SKIP - -Follow the rest of the Erlang instructions as described. - -After running: - - ./otp_build release -a - -You should run: - - ./release/win32/Install.exe -s - -This will set up the release/win32/bin directory correctly. The CouchDB -installation scripts currently write their data directly into this -location. - -To set up your environment for building CouchDB, run: - - eval `./otp_build env_win32` - -To set up the `ERL_TOP` environment variable, run: - - export ERL_TOP=[ERL_TOP] - -Replace `[ERL_TOP]` with the Erlang source directory name. - -Remember to use `/cygdrive/c/` instead of `c:/` as the directory prefix. - -To set up your path, run: - - export PATH=$ERL_TOP/release/win32/erts-5.8.5/bin:$PATH - -If everything was successful, you should be ready to build CouchDB. - -Relax. - -Building CouchDB ----------------- - -Note that `win32-curl` is only required if you wish to run the developer -tests. - -The documentation step may be skipped using `--disable-docs` if you wish. - -Once you have satisfied the dependencies you should run: - - ./configure \ - --with-js-include=/cygdrive/c/path_to_spidermonkey_include \ - --with-js-lib=/cygdrive/c/path_to_spidermonkey_lib \ - --with-win32-icu-binaries=/cygdrive/c/path_to_icu_binaries_root \ - --with-erlang=$ERL_TOP/release/win32/usr/include \ - --with-win32-curl=/cygdrive/c/path/to/curl/root/directory \ - --with-openssl-bin-dir=/cygdrive/c/openssl/bin \ - --with-msvc-redist-dir=/cygdrive/c/dir/with/vcredist_platform_executable \ - --disable-init \ - --disable-launchd \ - --prefix=$ERL_TOP/release/win32 - -This command could take a while to complete. - -If everything was successful you should see the following message: - - You have configured Apache CouchDB, time to relax. - -Relax. - -To install CouchDB you should run: - - make install - -If everything was successful you should see the following message: - - You have installed Apache CouchDB, time to relax. - -Relax. - -To build the .exe installer package, you should run: - - make dist - -Alternatively, you may run CouchDB directly from the build tree, but -to avoid any contamination do not run `make dist` after this. - -First Run ---------- - -You can start the CouchDB server by running: - - $ERL_TOP/release/win32/bin/couchdb.bat - -When CouchDB starts it should eventually display the following message: - - Apache CouchDB has started, time to relax. - -Relax. - -To check that everything has worked, point your web browser to: + powershell -ExecutionPolicy Bypass .\configure.ps1 -WithCurl + make -f Makefile.win check - http://127.0.0.1:5984/_utils/index.html +This will build couchdb, as well as run the eunit and javascript tests. -From here you should run the verification tests in Firefox. +As of CouchDB 2.0 RC1, all eunit and javascript tests should pass.