Difference between revisions of "CoCoA:Building CoCoA4 On Windows"

From ApCoCoAWiki
 
(3 intermediate revisions by 2 users not shown)
Line 5: Line 5:
 
== Getting the Toolchain installed ==
 
== 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.
+
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, allows us to 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 reduces the complexity of maintainig the project in general. Not having to pay for Visual Studio is 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 [http://www.mingw.org/ 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 [http://www.mingw.org/download.shtml 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.
+
First one needs to install MinGW. The version we used was 4.1.0. You can get the installer from the [http://www.mingw.org/ 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 should also install MSYS which is a shell that can be used in conjunction with the MinGW tools. You can get MSYS from the [http://www.mingw.org/download.shtml 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 installation completes successfully you should end up with an MSYS icon on the desktop. The last package we need is the MSYS Developer Tool Kit, which provides us with the tools to build the gmp in the next step. After installing the package you are ready to take the next step.
  
 
== Building the gmp ==
 
== 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.
+
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]] for instructions how to do it.
  
 
== Building QT ==
 
== Building QT ==
  
Due to its closed source nature you need a commercial qt license to build CoCoA 4.4. 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 stick with the defaults. Make sure to use MinGW as your compiler if you have more compilers installed.
+
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 the licensing information and the necessary 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 [http://lists.trolltech.com/qt-interest/2004-11/thread00516-0.html this thread] from the qt mailing list archive.
  
 
== Bugs ==
 
== Bugs ==

Latest revision as of 16:39, 14 October 2007

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, allows us to 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 reduces the complexity of maintainig the project in general. Not having to pay for Visual Studio is an added bonus.

First one needs to install MinGW. The version we used 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 should 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 installation completes successfully you should end up with an MSYS icon on the desktop. The last package we need is the MSYS Developer Tool Kit, which provides us with the tools to build the gmp in the next step. After installing the package you are ready to take 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 for 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 the licensing information and the necessary 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 mailing list archive.

Bugs

For a list check out CoCoA4.4_Buglist

ToDo

  • Finish page Mabshoff 11:20, 21 Jun 2005 (CEST)