CoCoA:Building CoCoA4 On Windows
Opening Remarks
Unfortunatly CoCoA 4.4 is not open source. We plan to release an open source reimplementation some time in the future. Still, in order to properly document the process of getting CoCoA 4.4 compiled on Windows this page describes it in all details. Should our windows guy be hit by a bus tomorrow at least somebody else should be able to do some of his work without too much difficulty.
Getting the Toolchain installed
Unlike earlier releases of CoCoA the Windows build can be build using the MinGW toolchain. MinGW is the Minimalist GNU for Windows environment. Using this toolchain reduces the need to do platform specific hacks, lets us use the same makefiles (since nmake, the make used by Microsoft Windows C and C++ compiler, is quite different from the standard gnu make) and just reduces the complexity of maintainig the project in general. Not having to pay for Visual Studio is just an added bonus.
First one needs to install MinGW. The version used when we tried this the last time was 4.1.0. You can get the installer from the MinGW website. Choose the complete install for the time being, installed it should weigh in around 150MB. Since you probably don't want to use the default Windows command prompt you stall also install MSYS which is a shell that can be used in conjunction with the MinGW tools. You can get MSYS from the Downloadsection of the MinGW website. Current version at the time of this writing was 1.0.10, which was less than 3M in size. If the install goes successfully you should end up with an MSYS icon on the desktop. The last package we need is the MSYS Developer Tool Kit, which provide the tools to build the gmp in the next step. Install the package and we are ready to do the next step.
Building the gmp
The gmp is the GNU Multiple Precision Arithmetic Library. Since compiling the library is pretty much the same procedure on all of the platforms we build CoCoA on check out Building_the_gmp on instructions how to do it.
Building QT
Due to its closed source nature you need a commercial qt license to build CoCoA 4.4. We use the 3.3.4 release, a 2.x release might also work but hasn't been tested since 2002. Since you have the sources you probably know the right person in the CoCoA project to get that licensing information and the needed setup files. When building qt on Windows you should build a dynamic as well as a static version of qt in different directories. Make sure to use MinGW as your compiler if you have more compilers installed. If the qt installer complains about not finding mingw32-make.exe make sure that %PATH% contains the directory of the bin directory of the MinGW installation. Building qt with MinGW takes quite some time, specifically the linking can eat up lots of space and CPU cyles (on a 2.4Ghz Athlon with 1.5G of RAM the linker ate 450MB of memory and 20+ minutes when linking qt-mt334.dll - you have been warned). For an explanation why linking takes so long you can check out this thread from the qt mainling list archive.
Bugs
For a list check out CoCoA4.4_Buglist
ToDo
- Finish page Mabshoff 11:20, 21 Jun 2005 (CEST)