We've launched our new site at www.openlighting.org. This wiki will remain and be updated with more technical information.
Building OLA for Windows
From wiki.openlighting.org
This describes how to get OLA compiled for windows, it's a work in progress so it's unlikely to work as is.
Contents
Install Mingw, msys & build tools
The instructions at http://www.mingw.org/wiki/MSYS are very helpful. There are similar instructions at http://www.cccp-project.net/wiki/index.php?title=Installing_MSYS-MinGW
- Install mingw and msys
- Launch the msys shell
- Unpack autoconf, automake and libtool to a directory of your choice.
- Install each of them with the following command:
$ ./configure --prefix=/mingw && make && make install
- Update PKG_CONFIG_PATH
As all the libraries will be installed in /mingw, PKG_CONFIG_PATH must be set.
Open the file /etc/profile (C:\msys\1.0\etc\profile) with your favorite editor (make sure it uses LF line endings) and add:
PKG_CONFIG_PATH="/mingw/lib/pkgconfig"
You might also want to set CFLAGS. Safe options for MinGW are:
CFLAGS="-pipe -O2 -mms-bitfields -march=i686"
just before
export HOME LOGNAME MSYSTEM HISTFILE
and modify that line by adding the variables:
export HOME LOGNAME MSYSTEM HISTFILE CFLAGS PKG_CONFIG_PATH
Now restart MSYS. You should now be able to use MSYS without problems.
Install Git
See http://code.google.com/p/msysgit/, be sure to select "unix style carriage returns" otherwise you'll get autoconf errors.
Install Dependencies
- http://code.google.com/p/protobuf/ . Note you need to install the .tar.gz as the zip just contains protoc (we need the libraries as well)
- http://www.ossp.org/pkg/lib/uuid/ , be sure to run configure with ./configure --prefix=/mingw --includedir /mingw/include/ossp
- http://sourceforge.net/projects/cppunit/files/ , download version
- http://code.google.com/p/google-ctemplate/
Build OLA
- Do a git checkout of OLA
- Run ./configure and disable runtime loadable plugins (not supported on windows)
$ ./configure --disable-ltdl
- Build
$ make
Current TODO
- Fix the Socket & SelectServer classes
Problems
- The released version of ctemplate doesn't build, http://code.google.com/p/google-ctemplate/issues/detail?id=48 indicates head should work.