Search code examples
g++gnu-makegslgnuwin32

Use 'make' and 'g++' on Windows OR how to get karambola working on windows


My goal: Install karambola on my Windows 10 maschine.

To install karambola I need the make command, which was never found with any programm. The only thing that worked was using GnuWin32 (when I was in the karambola directory):

& 'C:\Program Files (x86)\GnuWin32\bin\make.exe'

but then it only said:

 -Wall -O2 -DNDEBUG  -DVERSION_NUMBER=2.0 -o karambola.o -c karambola.cpp
 process_begin: CreateProcess(NULL, g++ -Wall -O2 -DNDEBUG -DVERSION_NUMBER=2.0 -o karambola.o -c karambola.cpp, ...) failed.
 make (e=2): Das System kann die angegebene Datei nicht finden.
 make: *** [karambola.o] Fehler 2

("Das System kann die angegebene Datei nicht finden" means "the system can't find the given file" and "Fehler 2" means "error 2")

Also using an Linux console would allways result in not finding the "g++" command, which I thought would be included in the programs I used.

It says I need gsl but that's not available for Windows so I tried Microsoft Visual Studios, then Gnuwin32 (together with the make.exe), then Cygwin, then msys and MinGW (basicly every solution I could find). I did not even know which packages I needed for each of them or what in detail there were actually used for. I used Windows Powershell to do the commands since it looked like all other consoles did not work as intended by installation manuals.

I tried everthing for several days and it just won't work. Please help :(


Solution

  • I figured it out :) The solution is using the allready implemented Linux feature in windows.

    1. Enable Linux in the windows settings and install an ubunto console from where I could continue. This helped me with that.

    (I had some problems in the following steps, but 2 things helped me: working as a root user and this fix.)

    1. Then I had to install g++ which can be done by just one command (it will tell you which one if you try to use it).

    The following is only following the instalation instructions:

    1. install gsl by "configure && make && make install"
    2. install karambola by "make" and "make test" (is the second one nessessary? probably not)
    3. use karambola (in root user mode) by "karambola myfile.poly --nolabels" or "karambola myfile.poly --labels".