Setting up a development environment on Windows

Install python ans setup tools

Grab the python installer from http://www.python.org/download/. Make sure you download a 2.x version. Version 3 is backwards incompatible and Django will not work under it.
Grab the setup tools installer from http://pypi.python.org/pypi/setuptools and run it.

Add python and easy_install to your path

Open the control panel, and select System, select the advanced tab and click on the Environment Variables button. You should see a variable named PATH (case is not important). If it's not there you can create it. Add the root folder of your python install (usually C:\python26) and the scripts folder (C:\python26\script). Use a semi colon ( ; ) to separate the values. Save and quit.

Install dependencies

Open a command prompt and use easy_install to install the required dependencies and some extra stuff that will help you out during development:

 
easy_install django
easy_install markdown
easy_install html5lib
easy_install south
easy_install python-openid
easy_install django-debug-toolbar
easy_install <dbadapter> #where dbaddapter is one of python-mysql or psycopg2 (mysql or postgres)

Optionally, you can forget the db adapter step if you plan to use SQLite, which I would recommend since it is very easy to create/delete/switch databases.

Install the database server

If you are planning to use either MySQL or PostgreSQL, you'll need to download and install the respective server. Grab the installers from:
MySQL - http://dev.mysql.com/downloads/mysql/
Postgres - http://www.postgresql.org/download/windows

Install them according to the respective documentation, and create an empty database.

Install Subversion (svn) and grab the latest OSQA sources

Grab the svn installer from http://subversion.apache.org/packages.html. Install it and checkout the OSQA sources onto your workspace:

 
svn co http://svn.osqa.net/svnroot/osqa/trunk/

Edit settings

Get into the OSQQA sources folder. Rename the file settings_local.py.dist to settings_local.py, and open it for edition. Find the database settings and edit them accordingly.

Create the database schema

Open a shell, get into the OSQA source and run:

manage.py syncdb --all
manage.py migrate forum --fake

When prompted to create a user, ignore it.

Run the development server

Now run:

manage.py runserver

Visit http://127.0.0.1:8000/ on your browser and you should see an happy working OSQA install.

Happy hacking

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. May 03, 2010

    Justin Grant says:

    The above instructions are missing a few important steps: 1. Don't forget to in...

    The above instructions are missing a few important steps:

    1. Don't forget to install Django!
    easy_install django

    2. Some of the easy_install steps won't actually install correctly on all windows version. On mine, installing markdown failed using easy_install. I was able to fix this by going to the sourceforge project site for markdown and downloading the setup EXE directly and installing it.

    3. There are no windows binaries on Sourceforge for python-mysql for Python 2.6, so the easy_install of python-mysql will fail on 2.6. I wasn't able to work aroudn this, so I opted to use sqlite3 instead initially, and will use postgres eventually.

    1. May 12, 2010

      daniel adashek says:

      hey justin, thanks for the tips, I am working on setting up an OSQA drop me a li...

      hey justin, thanks for the tips, I am working on setting up an OSQA drop me a line - I'd like to compare notes: wplwycpm@gmail.com

  2. May 05, 2010

    Hernâni Cerqueira says:

    This page http://www.codegood.com/archives/4 has some pre compiled auto installa...

    This page http://www.codegood.com/archives/4 has some pre compiled auto installable binaries for windows.

  3. Oct 01, 2010

    Justin Grant says:

    Another minor typo above: > (usually C:\python26) and the scripts folder (C:...

    Another minor typo above:

    > (usually C:\python26) and the scripts folder (C:\python26\script).

    The folder is "scripts" not "script". Plus, Python 2.7 is the latest release, so should probably change above to:

    > (usually C:\python27) and the scripts folder (C:\python27\scripts).

  4. Oct 07, 2010

    Justin Grant says:

    Also, under "create database schema" above, you must not accept Django's invitat...

    Also, under "create database schema" above, you must not accept Django's invitation to create a super-user. If you do, then the user ID of your OSQA user will not be 1, which will in turn prevent the stackexchange importer from working correctly.

  5. Jan 06, 2011

    Jashan Chittesh says:

    I just followed these steps and had two issues on the way: 1) "Grab the setup t...

    I just followed these steps and had two issues on the way:

    1) "Grab the setup tools installer from http://pypi.python.org/pypi/setuptools and run it." - this doesn't seem to work on Windows 2008 Server 64bit with the 64bit version of Python 2.7 installed. The installer fails with a message "Python version 2.7 required, which was not found in the registry." It seems as if this is a known issue (see http://bugs.python.org/issue6792) - I worked around it by installing the package locally and then manually copying the files (not my favorite solution but it worked).

    2) I first installed OSQA into some folder below Inetpub/wwwroot. With that setup, when trying to run "manage.py syncdb --all" I got a message that the module was not found. So I moved the folder below Python27/Lib/site-packages. That fixed this issue. Probably that's something obvious to people more intimate with Python/Django.

    Anyways, now it's working for me

  6. Jan 22, 2011

    Anaekwe Kossanah says:

    I install on my local machine Window 7 64bit WampServer. I thought I got everyth...

    I install on my local machine Window 7 64bit WampServer. I thought I got everything up and run until I key
    manage.py syncdb --all
    on the command line. Here is my persistent error.

    There is no South database module 'south.db.None' for your database. Please eith
    er choose a supported database, check for SOUTH_DATABASE_ADAPTER[S] settings, or
     remove South from INSTALLED_APPS.
    

    I am a python newbie. I need some help

    1. Jan 22, 2011

      Anaekwe Kossanah says:

      Honestly, I am sure of the implication of my action. I just edited setting_local...

      Honestly, I am sure of the implication of my action.
      I just edited setting_local.py file and add "SOUTH"
      DISABLED_MODULES = ['books', 'recaptcha', 'project_badges','south']

      Afterwards I ran the cmd and I was able to progress.
      Someone, may advice me If am on the right path.
      I also feel It may be too early to ask, but can I possibly integrate this OSQA to a joomla site and have the single user authentication.