Compiling The Powder Toy 36.0 With MinGW 5.1.6

  • Simon
    17th Jul 2010 Administrator 0 Permalink
    Have you tried just "make powder.exe"?
  • kaaie
    17th Jul 2010 Member 0 Permalink
    Simon:
    Have you tried just "make powder.exe"?

    MinGW doesn't come with the original make... Something about Unix compatibility.

    How did you get it to work?
  • kaaie
    17th Jul 2010 Member 0 Permalink
    bump
  • feki00
    17th Jul 2010 Member 0 Permalink
    i was able to compile the source in windows
    my makefile:


    # Project: Project1
    # Makefile created by Dev-C++ 4.9.9.2

    CPP = C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__
    CC = C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__
    WINDRES = C:\Dev-Cpp\Bin\windres.exe
    RES = Project1_private.res
    OBJ = http.o md5.o powder.o update.o $(RES)
    LINKOBJ = http.o md5.o powder.o update.o $(RES)
    LIBS = -L"E:/D/Dev-Cpp/lib" -lmingw32 -lws2_32 ../lib/lib/bzip2.lib ../lib/lib/libbz2.a ../lib/lib/libbz2.dll.a -mwindows -lSDLmain -lSDL -g3
    INCS = -I"E:/D/Dev-Cpp/include"
    CXXINCS = -I"E:/D/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"E:/D/Dev-Cpp/include/c++/3.4.2/backward" -I"E:/D/Dev-Cpp/include/c++/3.4.2/mingw32" -I"E:/D/Dev-Cpp/include/c++/3.4.2" -I"E:/D/Dev-Cpp/include"
    BIN = Project1.exe
    CXXFLAGS = $(CXXINCS) -g3 -gstabs -g3
    CFLAGS = $(INCS) -g3 -gstabs -g3
    RM = rm -f

    .PHONY: all all-before all-after clean clean-custom

    all: all-before Project1.exe all-after


    clean: clean-custom
    ${RM} $(OBJ) $(BIN)

    $(BIN): $(OBJ)
    $(CPP) $(LINKOBJ) -o "Project1.exe" $(LIBS)

    http.o: http.c
    $(CPP) -c http.c -o http.o $(CXXFLAGS)

    md5.o: md5.c
    $(CPP) -c md5.c -o md5.o $(CXXFLAGS)

    powder.o: powder.c
    $(CPP) -c powder.c -o powder.o $(CXXFLAGS)

    update.o: update.c
    $(CPP) -c update.c -o update.o $(CXXFLAGS)

    Project1_private.res: Project1_private.rc powder-res.rc
    $(WINDRES) -i Project1_private.rc --input-format=rc -o Project1_private.res -O coff


    actual stuff executed:

    C:\Dev-Cpp\Bin\make.exe -f "C:\Dev-Cpp\powder-33.2-src\Makefile.win" all
    C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__ -c http.c -o http.o -I"E:/D/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"E:/D/Dev-Cpp/include/c++/3.4.2/backward" -I"E:/D/Dev-Cpp/include/c++/3.4.2/mingw32" -I"E:/D/Dev-Cpp/include/c++/3.4.2" -I"E:/D/Dev-Cpp/include" -g3 -gstabs -g3

    C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__ -c md5.c -o md5.o -I"E:/D/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"E:/D/Dev-Cpp/include/c++/3.4.2/backward" -I"E:/D/Dev-Cpp/include/c++/3.4.2/mingw32" -I"E:/D/Dev-Cpp/include/c++/3.4.2" -I"E:/D/Dev-Cpp/include" -g3 -gstabs -g3

    C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__ -c powder.c -o powder.o -I"E:/D/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"E:/D/Dev-Cpp/include/c++/3.4.2/backward" -I"E:/D/Dev-Cpp/include/c++/3.4.2/mingw32" -I"E:/D/Dev-Cpp/include/c++/3.4.2" -I"E:/D/Dev-Cpp/include" -g3 -gstabs -g3

    C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__ -c update.c -o update.o -I"E:/D/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"E:/D/Dev-Cpp/include/c++/3.4.2/backward" -I"E:/D/Dev-Cpp/include/c++/3.4.2/mingw32" -I"E:/D/Dev-Cpp/include/c++/3.4.2" -I"E:/D/Dev-Cpp/include" -g3 -gstabs -g3

    C:\Dev-Cpp\Bin\windres.exe -i Project1_private.rc --input-format=rc -o Project1_private.res -O coff

    C:\Dev-Cpp\Bin\gcc.exe -D__DEBUG__ http.o md5.o powder.o update.o Project1_private.res -o "Project1.exe" -L"E:/D/Dev-Cpp/lib" -lmingw32 -lws2_32 ../lib/lib/bzip2.lib ../lib/lib/libbz2.a ../lib/lib/libbz2.dll.a -mwindows -lSDLmain -lSDL -g3
  • plypencil
    17th Jul 2010 Member 0 Permalink
    kaaie:
    g MinGW, you're trying to make the linux target. you nee

    ^Ignore the quote it wont select the whole post? Bug?

    Download the source and extract to a known directory
    Then in the terminal write sudo apt-get libbz2-dev
    Then in the terminal write sudo apt-get SDL1.4-dev
    Open your terminal and change directory to where the source is located 'cd [path]'
    Then type 'MAKE'
    Then "./powder"
  • Resurrector
    17th Jul 2010 Banned 0 Permalink
    This post is hidden because the user is banned