Dear wiki user,

You have subscribed to a wiki page "Couchdb Wiki" for change notification.

The page "Running CouchDB in Dev Mode" has been deleted by JoanTouzet:

https://wiki.apache.org/couchdb/Running%20CouchDB%20in%20Dev%20Mode?action=diff&rev1=10&rev2=11

Comment:
See README-DEV.rst in the repo

- <<Include(EditTheWiki)>>
  
- ## page was renamed from Running_Couchdb_in_Dev_Mode
- This only applies if you need to make changes to the CouchDB server or to the 
Futon web front-end.
- 
- === Prerequisites ===
- You need to have installed CouchDB from source. See 
[[Installing_from_source]].
- 
- === Create a Development Configuration ===
- The following commands set up a CouchDB configuration that points to the 
location of your SVN checkout.
- 
- Run these commands:
- 
- {{{
- $ cd YOUR_COUCHDB_CHECKOUT_DIRECTORY
- $ ./bootstrap
- $ ./configure
- $ make dev
- }}}
- You can change defaults such as port number and passwords in 
`./etc/couchdb/local_dev.ini`. Now start CouchDB by calling this command:
- 
- {{{
- $ utils/run
- }}}
- Your CouchDB server has been started as a foreground process.  You should see 
messages similar to this:
- 
- {{{
- Apache CouchDB 0.11.0b885334 (LogLevel=info) is starting.
- Apache CouchDB has started. Time to relax.
- [info] [<0.32.0>] Apache CouchDB has started on http://127.0.0.1:5984/
- }}}
- You can change to background, reset config files, redirect output etc via 
command line arguments.  (Note only one dash in front of help.)
- 
- {{{
- $ utils/run -help
- }}}
- 
- === Ubuntu 9.10 ===
- 
- This is how you can run the dev version side by side with the Ubuntu version. 
The main difficulties are Javascript engine paths as documented by 
[[http://mattgoodall.blogspot.com/2009/09/build-couchdb-on-ubuntu-910-karmic.html|Matt
 Goodall]].  You need to specify `LD_RUN_PATH=/usr/lib/xulrunner-1.9.1.7` 
before every command as well as provide extra parameters to configure.  (Note 
the final digit changes with each Firefox update - check your /usr/lib 
directory to find the correct number.  You also need to rebuild when that digit 
changes.)
- 
- Get all the needed build time packages:
- 
- {{{
- $ sudo apt-get install libtool help2man erlang-nox erlang-dev libicu-dev 
xulrunner-dev libcurl4-openssl-dev build-essential automake 
- }}}
- 
- Checkout source code and build it:
- {{{
- $ svn co http://svn.apache.org/repos/asf/couchdb/trunk couchdb
- $ cd couchdb
- $ ./bootstrap
- $ LD_RUN_PATH=/usr/lib/xulrunner-1.9.1.7 ./configure 
--with-js-lib=/usr/lib/xulrunner-devel-1.9.1.7/lib/ 
--with-js-include=/usr/lib/xulrunner-devel-1.9.1.7/include
- $ LD_RUN_PATH=/usr/lib/xulrunner-1.9.1.7 make dev
- }}}
- 
- Now edit `./etc/default/local_dev.ini` and change the port.  I use 5984 
(default) for the Ubuntu install and 5985 for this dev version.
- 
- {{{
- $ LD_RUN_PATH=/usr/lib/xulrunner-1.9.1.7 utils/run
- }}}
- 
- === Run with debugger ===
- By default, make dev does not add debug information, so loading the debugger 
will not work. To start the debugger when CouchDB starts, add the following 
debugger:start() line to src/couchdb/couch.erl:
- {{{
- start() ->
-     debugger:start(),
-     application:start(couch).
- }}}
- Now recompile all sources with ERLC_FLAGS set to enable debug information:
- {{{
- make clean
- xulrunner_gre_version=`xulrunner --gre-version`
- export ERLC_FLAGS=+debug_info
- LD_RUN_PATH=/usr/lib/xulrunner-devel-${xulrunner_gre_version}/lib/ 
./configure 
--with-js-lib=/usr/lib/xulrunner-devel-${xulrunner_gre_version}/lib/ 
--with-js-include=/usr/lib/xulrunner-devel-${xulrunner_gre_version}/include/ && 
ERLC_FLAGS=+debug_info make dev
- }}}
- then use the following command to start a CouchDB with local configuration:
- {{{
- xulrunner_gre_version=`xulrunner --gre-version`
- LD_LIBRARY_PATH=/usr/lib/xulrunner-devel-${xulrunner_gre_version}/lib/ 
./utils/run
- }}}
- the debugger window should appear and using "Module" -> "Interpret..." will 
allow you to select the source code for modules you want to track. As an 
example select src/couchdb/couch_db.erl and visit '/_utils/' in the browser to 
see calls coming in.
- 

Reply via email to