Embarcadero / Dev-Cpp

A fast, portable, simple, and free C/C++ IDE
https://www.embarcadero.com/free-tools/dev-cpp
GNU General Public License v2.0
2.52k stars 276 forks source link

Makefile.win Error #119

Open skylee03 opened 3 years ago

skylee03 commented 3 years ago

I usually use Source\Tools\LangCheck\LangCheck.exe to assist my translating works, and it could be compiled properly in the previous versions of Dev-C++. But when I compile it under Embarcadero Dev-C++ v6.3, an error was generated: image

The content of the Makefile.win file generated by Dev-C++ is:

# Project: LangCheck
# Makefile created by Embarcadero Dev-C++ 6.3

CPP      = g++.exe
CC       = gcc.exe
WINDRES  = windres.exe
RES      = obj/LangCheck_private.res
OBJ      = obj/main.o obj/LangFile.o obj/resource.o obj/LangCompare.o $(RES)
LINKOBJ  = obj/main.o obj/LangFile.o obj/resource.o obj/LangCompare.o $(RES)
LIBS     = -L"C:/TDM-GCC-64/lib" -L"C:/TDM-GCC-64/x86_64-w64-mingw32/lib" -static-libgcc -mwindows -m32 -s
INCS     = -I"C:/TDM-GCC-64/include" -I"C:/TDM-GCC-64/x86_64-w64-mingw32/include" -I"C:/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include"
CXXINCS  = -I"C:/TDM-GCC-64/include" -I"C:/TDM-GCC-64/x86_64-w64-mingw32/include" -I"C:/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include" -I"C:/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/9.2.0/include/c++"
BIN      = LangCheck.exe
CXXFLAGS = $(CXXINCS) -m32 -Wall -Wextra -pedantic -S
CFLAGS   = $(INCS) -m32 -Wall -Wextra -pedantic -S
DEL      = C:\Program Files (x86)\Embarcadero\Dev-Cpp\DevCpp.exe INTERNAL_DEL

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

all: all-before $(BIN) all-after

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

$(BIN): $(OBJ)
    $(CPP) $(LINKOBJ) -o $(BIN) $(LIBS)

obj/main.o: main.cpp
    $(CPP) -c main.cpp -o obj/main.o $(CXXFLAGS)

obj/LangFile.o: LangFile.cpp
    $(CPP) -c LangFile.cpp -o obj/LangFile.o $(CXXFLAGS)

obj/resource.o: resource.cpp
    $(CPP) -c resource.cpp -o obj/resource.o $(CXXFLAGS)

obj/LangCompare.o: LangCompare.cpp
    $(CPP) -c LangCompare.cpp -o obj/LangCompare.o $(CXXFLAGS)

obj/LangCheck_private.res: LangCheck_private.rc 
    $(WINDRES) -i LangCheck_private.rc -F pe-i386 --input-format=rc -o obj/LangCheck_private.res -O coff 

Then I edited this file manually:

CXXFLAGS = $(CXXINCS) -m32 -Wall -Wextra -pedantic -pipe
CFLAGS   = $(INCS) -m32 -Wall -Wextra -pedantic -pipe

And it worked well.

FMXExpress commented 3 years ago

Maybe -pipe needs to be on by default now because of make -j.