I would severely advise against trying to build couchdb by creating a VS2008 project. The easiest way to build couch on windows is to get the src for couchdb-win32 from my github or from markh's. Follow the directions in the README. We need to update the wiki to add links to these githubs i guess.
http://github.com/nrstott/couchdb-win32/tree/master On Mon, Jun 22, 2009 at 1:33 PM, Heiden, W van - SPLXL < [email protected]> wrote: > I am trying to build CouchDB for Windows, not Erlang (except for Mochiweb). > I have no experience with Erlang (nor couchDB) and the Wiki is (still) > unclear to me because it doesn't answer my thoughts or questions. > For myself I have created the steps that I have done, they are below, and > come from different sources but done and checked by me, is incomplete and > work-in-progress: > - - - - - - - - - - - - - - - - - - - - - - > > > I have used http://wiki.apache.org/couchdb/Installing_on_Windows as a > starting point but ended up with a non-working CouchDB. > > > > Since I had Visual Studio 2008 installed, the steps for the GNU C Compiler > or Visual C++ Compiler is not tested. > > > > Step 0: Pre-requisites > > a) OTP/Erlang environment > > b) Win32 C Compiler/Linker (e.g. GCC, Visual C++ Express Edition or Visual > Studio 2008) > > c) OpenSSL (an open-source implementation of Secure Socket Layer) > > d) ICU (a library providing Unicode and Globalization support) > > e) SpiderMonkey (Mozilla's C implementation of JavaScript) > > > > Step 1: Download the pre-requisites > > a) download the Erlang Windows binary (otp_win32_R13B01.exe) from > http://www.erlang.org/download.html > > b) download the Visual C++ 2008 Express Edition from > http://msdn.microsoft.com/en-us/visualc/default.aspx > > c) download an OpenSSL binary distribution from > http://www.openssl.org/related/binaries.html, e.g. > http://www.slproweb.com/products/Win32OpenSSL.html > > d) download the ICU Windows binary (icu4c-4_2_0_1-Win32-msvc9.zip) from > http://icu-project.org/download/4.2.html > > e) download the SpiderMonkey source-code (js-1.7.0.tar.gz) from > http://ftp.mozilla.org/pub/mozilla.org/js/ > > > > Step 2: Installing the pre-requisites > > a) run otp_win32_R13B01.exe to install Erlang into directory c:\erl-5.7.2 > > b) run the Visual C++ installer (since I had Visual Studio 2008 installed > this step is not tested) > > c) run the win32OpenSSL_Light-0_9_8k.exe to install the OpenSSL libraries > into directory c:\openssl-0.9.8 > > d) unpack the ICU package into directory c:\icu-4.2.0.1 > > e) unpack the SpiderMonkey source-code into directory c:\js-1.7.0 > > > > Step 3: Configuring the pre-requistes > > a) run werl.exe from c:\erl-5.7.2\bin to start the Erlang shell (exit the > shell if it works, otherwise check the installation) > > please check that mochiweb is not available inside the lib directory > > - use a SVN client a-la TortoiseSVN to check-out the Mochiweb source-code > at http://code.google.com/p/mochiweb/ to c:\mochiweb-trunk > > - (from the DOS prompt) compile the sources using the bash and make from > the mozilla-build directory > > -- open een DOS box > > -- start the bash shell with \mozilla-build-1.3\msys\bin\bash.exe --login > -i > > -- from this shell type cd c:/mochiweb-trunk/src > > -- type make to build mochiweb > > -- copy the c:\mochiweb-trunk\ebin directory to > c:\erl-5.7.2\lib\mochiweb\ebin > > b) run nmake.exe from c:\program files\microsoft visual studio 9.0\vc\bin > > c) check for lib*.dll in the c:\openssl-0.9.8 directory > > d) check for lib*.dll in the c:\icu-4.2.0.1\bin directory and copy lib*.dll > to c:\erl-5.7.2\bin > > e) check for *.c in the c:\js-1.7.0\src directory > > please check that there are no *.dll or *.exe files in the directory > > - go to http://www.mozilla.org/js/spidermonkey/ and read how to build > SpiderMonkey > > - go to https://developer.mozilla.org/en/SpiderMonkey_Build_Documentationand > read how to build SpiderMonkey > > - go to https://developer.mozilla.org/en/Windows_Build_Prerequisites and > read how to build SpiderMonkey > > -- download > http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-1.3.exeand > install into directory c:\mozilla-build-1.3 > > -- run start-msvc9.bat > > -- within this shell use cd to go to the js-1.7.0\src directory and run > make -f Makefile.ref (see the SpiderMonkey documentation that you just have > read), now we have created a debug version of SpiderMonkey, use make > DEBUG_OPT=1 -f Makefile.ref to build a normal version of SpiderMonkey, use > the Windows Explorer to view the contents of the c:\js-1.7.0.\src directory, > it contains two new folders (WINNT5.1_DBG.OBJ and WINNT5.1_OPT.OBJ). > > -- we now have the SpiderMonkey Javascript engine js.exe and can exit the > shell > > -- copy the js.exe and the js32.dll to the c:\erl-5.7.3\bin directory and > rename js.exe to couch_js.exe > > > > Step 3: Download CouchDB > > > > Step 5: Install CouchDB > > > > > > ________________________________ > > Van: Nathan Stott [mailto:[email protected]] > Verzonden: ma 22-6-2009 19:49 > Aan: [email protected] > Onderwerp: Re: Win32 installation (building the Couch ERL driver DLL). > > > > You're trying to build Erlang from source? > I'm very interested in how your experience in following the wiki directions > is going. Please advise as to where the directions can be made more clear. > > On Mon, Jun 22, 2009 at 12:24 PM, Heiden, W van - SPLXL < > [email protected]> wrote: > > > Hello, > > > > I do want to start with CouchDB on Windows and prefer to build from > scratch > > to understand the product and it's dependecies better. > > > > I am using the instructions from > > http://wiki.apache.org/couchdb/Installing_on_Windows and am stuck at > > building the 'couch erl driver DLL'. > > > > Have built mochiweb succesfully, also SpiderMonkey (with the standard > js.c) > > built succesfully. > > > > Unfortunately building SpiderMonkey with the CouchDB js.c failed (see > > instruction at http://blog.endflow.net/?p=55&lang=en), but will look at > > that later. > > > > In my Erlang distribution (C:\erl-5.7.2\erts-5.7.2) I am missing the > > directories or files: > > C:\otp_src_R13B\erts\emulator\sys\win32 > > C:\otp_src_R13B\erts\emulator\beam > > > > Where can I get these files? And how to add them to my project in Visual > > C++ Express Edition? > > > > Thanks, > > Regards, Walter > > > > > > ********************************************************************** > > For information, services and offers, please visit our web site: > > http://www.klm.com <http://www.klm.com/> . This e-mail and any > attachment may contain > > confidential and privileged material intended for the addressee > > only. If you are not the addressee, you are notified that no part > > of the e-mail or any attachment may be disclosed, copied or > > distributed, and that any other action related to this e-mail or > > attachment is strictly prohibited, and may be unlawful. If you have > > received this e-mail by error, please notify the sender immediately > > by return e-mail, and delete this message. > > > > Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries > > and/or its employees shall not be liable for the incorrect or > > incomplete transmission of this e-mail or any attachments, nor > > responsible for any delay in receipt. > > Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal > > Dutch Airlines) is registered in Amstelveen, The Netherlands, with > > registered number 33014286 > > ********************************************************************** > > > > > ********************************************************************** > For information, services and offers, please visit our web site: > http://www.klm.com. This e-mail and any attachment may contain > confidential and privileged material intended for the addressee > only. If you are not the addressee, you are notified that no part > of the e-mail or any attachment may be disclosed, copied or > distributed, and that any other action related to this e-mail or > attachment is strictly prohibited, and may be unlawful. If you have > received this e-mail by error, please notify the sender immediately > by return e-mail, and delete this message. > > Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries > and/or its employees shall not be liable for the incorrect or > incomplete transmission of this e-mail or any attachments, nor > responsible for any delay in receipt. > Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal > Dutch Airlines) is registered in Amstelveen, The Netherlands, with > registered number 33014286 > ********************************************************************** >
