You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@couchdb.apache.org by "Heiden, W van - SPLXL" <Wa...@klm.com> on 2009/06/22 19:24:16 UTC

Win32 installation (building the Couch ERL driver DLL).

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. 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 
**********************************************************************

Re: Win32 installation (building the Couch ERL driver DLL).

Posted by Nathan Stott <nr...@gmail.com>.
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 <
Walter-van.Heiden@klm.com> 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:nrstott@gmail.com]
> Verzonden: ma 22-6-2009 19:49
> Aan: user@couchdb.apache.org
> 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 <
> Walter-van.Heiden@klm.com> 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
> **********************************************************************
>

RE: Win32 installation (building the Couch ERL driver DLL).

Posted by "Heiden, W van - SPLXL" <Wa...@klm.com>.
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_Documentation and 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.exe and 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:nrstott@gmail.com]
Verzonden: ma 22-6-2009 19:49
Aan: user@couchdb.apache.org
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 <
Walter-van.Heiden@klm.com> 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 
**********************************************************************

Re: Win32 installation (building the Couch ERL driver DLL).

Posted by Nathan Stott <nr...@gmail.com>.
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 <
Walter-van.Heiden@klm.com> 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. 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
> **********************************************************************