"Project is not compiled" error message?? Topic is solved

If you are using wxDev-C++ for your wxWidgets design, please ask your questions here instead of in IDE Related.
Post Reply
mstampfer1
Earned a small fee
Earned a small fee
Posts: 13
Joined: Fri Apr 13, 2007 11:34 pm

"Project is not compiled" error message??

Post by mstampfer1 » Sat Apr 14, 2007 7:31 am

I'm compiling gnuplot 4.2 using wxDev-CPP 6.2.10 the latest stable release and with an existing mingw32 Makefile supplied in the source release (in config/makefile.mgw).

I keep running across the "Project is not compiled" pop up error message even though the compile+link seems to work correctly and generates the exe files.

Is there any reason why this message pops up even though the compile is okay?

I cannot run nor debug the program from the IDE as a result. (Though it runs fine from the command line).

Here is a compiler log from the IDE. Is there anything apparent or wrong with the compile? What can I do to get the correct project compiled status?

Compiler: Default GCC compiler
Executing make clean
rm -f config.h *.o wgnuplot.map wgnuplot.res win/gnuplot.rtf
rm -f wxterminal/*.o
rm -f doc2rtf.exe win/wgnuplib.res wgnuplib.map wgnuplot.lib
rm -f ../demo/bf_test.exe *.ico geticon.exe allterm.h allterm.c
rm -f gnuplot.tex gnuplot.dvi gnuplot.ps gnuplot.pdf
cp ../config/config.mgw config.h
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 alloc.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 axis.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 binary.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 bitmap.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 breaders.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 color.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 command.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 contour.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 datafile.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 dynarray.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 eval.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 fit.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 gadgets.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 getcolor.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 graph3d.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 graphics.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 help.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 hidden3d.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 history.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 internal.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 interpol.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 matrix.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 misc.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 mouse.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 parse.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 plot.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 plot2d.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 plot3d.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 pm3d.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 readline.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 save.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 scanner.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 set.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 -DHELPFILE=\"\" -DBINDIR=\"\" -c show.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 specfun.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 standard.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 stdfn.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 tables.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 -DGNUPLOT_PS_DIR=\"share/PostScript\" -I../term term.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 time.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 unset.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 util.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 util3d.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 variable.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 version.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 gpexecute.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 -DHELPFILE=\"\" win/winmain.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 win/wgnuplib.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 win/wgraph.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 win/wprinter.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 win/wtext.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 win/wpause.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 win/wmenu.c
win/wmenu.c: In function `SendMacro':
win/wmenu.c:402: warning: passing arg 1 of `_getcwd' from incompatible pointer type
d:/ProgramFiles/Dev-Cpp/bin/gcc -s -o geticon.exe win/geticon.c
./geticon win/wgnuplot.rc
GRPICON.ico
TEXTICON.ico
d:/ProgramFiles/Dev-Cpp/bin/windres --include-dir /mingw32/include --include-dir=win --define __WIN32__ --define __WIN95__ --define MSRC --define __GNUWIN32__ --include-dir=win win/wgnuplot.rc wgplt_res.o
echo wgplt_res.o
wgplt_res.o
d:/ProgramFiles/Dev-Cpp/bin/g++ -s -mwindows -o wgnuplot.exe alloc.o axis.o binary.o bitmap.o breaders.o color.o command.o contour.o datafile.o dynarray.o eval.o fit.o gadgets.o getcolor.o graph3d.o graphics.o help.o hidden3d.o history.o internal.o interpol.o matrix.o misc.o mouse.o parse.o plot.o plot2d.o plot3d.o pm3d.o readline.o save.o scanner.o set.o show.o specfun.o standard.o stdfn.o tables.o term.o time.o unset.o util.o util3d.o variable.o version.o gpexecute.o winmain.o wgnuplib.o wgraph.o wprinter.o wtext.o wpause.o wmenu.o wgplt_res.o -lkernel32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -ladvapi32\
d:/ProgramFiles/Dev-Cpp/bin/gcc -c -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 -U_Windows -o dbinary.o binary.c
d:/ProgramFiles/Dev-Cpp/bin/gcc -s -O2 -I.. -I. -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE=1 -U_Windows -o ../demo/bf_test.exe bf_test.c dbinary.o alloc.o
(cd ../demo/ ; ./bf_test.exe )
gcc -O2 -DHAVE_STDBOOL_H -s -o pgnuplot.exe win/pgnuplot.c version.o -I. -luser32
Execution terminated
Compilation successful

Here is a copy of the Makefile I'm using. Thanks

MOUSE=1
GNUPLOT_PS_DIR = share/PostScript
DESTDIR = /c/Progra~1/Gnuplot4.2
GCCPATH = d:/ProgramFiles/Dev-Cpp/bin/
CFLAGS =
GNU_RC = 1
GNUSORT = /bin/sort
CC = $(GCCPATH)gcc
LD = $(GCCPATH)gcc
CXX = $(GCCPATH)g++
LDX = $(GCCPATH)g++
RM = rm -f
CP = cp -p
ifdef DEBUG
CFLAGS += -g
LDFLAGS += -g
else
CFLAGS += -O2
LDFLAGS += -s
endif
ifdef PIPES
OPTS += -DPIPES
LDFLAGS2 = -mconsole
endif
TOP = ..
TERMFLAGS = -DGNUPLOT_PS_DIR=\"$(GNUPLOT_PS_DIR)\" -I$(TOP)/term
TERMLIBS =
CFLAGS += -I$(TOP) -I. -D_Windows -DHAVE_CONFIG_H\
$(OPTS)
ifdef MOUSE
CFLAGS += -DUSE_MOUSE=0
endif
ifdef NEWGD
GD=1
PNG=1
endif
ifdef GD
CFLAGS += -DHAVE_LIBGD
TERMLIBS += -lgd
endif
ifdef GIF
CFLAGS += -DHAVE_GD_GIF
endif
ifdef PNG
CFLAGS += -DHAVE_LIBPNG
TERMLIBS += -lpng -lz
endif
ifdef NEWGD
CFLAGS += -DHAVE_GD_PNG
ifdef FREETYPE
CFLAGS += -DHAVE_GD_TTF
TERMLIBS += -lfreetype
endif
ifdef JPEG
CFLAGS += -DHAVE_GD_JPEG
TERMLIBS += -ljpeg
endif
ifdef PNG_FOR_GIF
CFLAGS += -DPNG_FOR_GIF
CFLAGS += -DHAVE_GD_GIF
endif
endif
ifdef PDF
CFLAGS += -DHAVE_LIBPDF
ifdef PDF_NOTIFF
TERMLIBS += -lpdf_notiff
else
TERMLIBS += -lpdf -ltiff
endif
ifndef PNG
NEED_PNG_W = 1
elseifndef NEWGD
NEED_PNG_W = 1
endif
ifdef NEED_PNG_W
CFLAGS += -DHAVE_LIBPNG
TERMLIBS += -lpng-w -lz-w
endif
endif
ifdef WXT
CFLAGS += -DWXWIDGETS
CXXFLAGS += $(shell wx-config --cxxflags)
CAIRO_CFLAGS = $(shell pkg-config --cflags cairo)
CAIRO_LIBS = $(shell pkg-config --libs cairo)
PANGO_CFLAGS = $(shell pkg-config --cflags pangocairo)
PANGO_LIBS = $(shell pkg-config --libs pangocairo)
WX_LIBS = $(shell wx-config --libs)
WX_OBJS = wxt_gui.o gp_cairo.o
endif
ifdef GNU_RC
# RC = d:/cygnus/cygwin-b20/H-i586-cygwin32/bin/windres
RC = $(GCCPATH)windres
RCFLAGS = --include-dir /mingw32/include \
--include-dir=win \
--define __WIN32__ --define __WIN95__ --define MSRC \
--define __GNUWIN32__
ifdef WXT
RCFLAGS += --define WXWIDGETS --include-dir=$(WX_LOCATION)
endif
RCOUT = wgplt_res.o
RES2COFF = echo wgplt_res.o
else
RC = $(MSSDK)/bin/rc
RCFLAGS = -v -i$(MSSDK)/include -iwin -dWIN32 -dMSRC
ifdef WXT
RCFLAGS += -dWXWIDGETS -i$(WX_LOCATION)
endif
RCOUT = -fowgnuplot.res
RES2COFF = res2coff -i wgnuplot.res -o wgplt_res.o
endif
O=o
T=../term/
D=../docs/
L=docs/latex/ # HBB FIXME 20060430: what's this for?
M=../demo/
default: config.h wgnuplot.exe $(HELPFILE) wgnuplot.mnu $(M)bf_test.exe \
pgnuplot.exe
all: config.h wgnuplot.exe $(HELPFILE) wgnuplot.mnu $(M)bf_test.exe \
pgnuplot.exe

include makefile.all
OBJS = $(COREOBJS) version.$(O) gpexecute.$(O) $(WX_OBJS)
WINOBJS = winmain.$(O) wgnuplib.$(O) wgraph.$(O) wprinter.$(O) wtext.$(O) wpause.$(O) wmenu.$(O)
WINDOWS = makefile.win makefile.nt README.win win/wcommon.h \
win/wgnuplib.c win/wgnuplib.def win/wgnuplib.h win/wgnuplib.rc \
win/wgnuplot.def win/wgnuplot.hpj win/wgnuplot.mnu win/wgraph.c \
win/winmain.c win/wmenu.c win/wpause.c win/wprinter.c \
win/wresourc.h win/wtext.c win/wtext.h win/geticon.c \
$(D)doc2rtf.c $(T)win.trm win/grpicon.ico win/texticon.ico
.SUFFIXES: .exe .o .c
.c.o:
$(CC) -c $(CFLAGS) $*.c
LDLIBS = -lkernel32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -ladvapi32
config.h: ../config/config.mgw
cp $< [email protected]
$(OBJS) $(WINOBJS) dbinary.$(O): config.h
wgnuplot.exe: $(OBJS) $(WINOBJS) win/wgnuplot.def wgplt_res.o texticon.ico grpicon.ico
$(LDX) $(LDFLAGS) $(LDFLAGS2) -mwindows -o [email protected] $(OBJS) $(WINOBJS) wgplt_res.o $(LDLIBS)\
$(TERMLIBS) $(WX_LIBS) $(CAIRO_LIBS) $(PANGO_LIBS)
pgnuplot.exe: win/pgnuplot.c version.o
gcc -O2 -DHAVE_STDBOOL_H -s -o pgnuplot.exe win/pgnuplot.c version.o -I. -luser32
wgplt_res.o : win/wgnuplot.rc win/wgnuplib.rc win/wresourc.h texticon.ico grpicon.ico
$(RC) $(RCFLAGS) --include-dir=win win/wgnuplot.rc $(RCOUT)
$(RES2COFF)
show.o: show.c plot.h setshow.h
$(CC) -c $(CFLAGS) -DHELPFILE=\"$(HELPFILE)\" -DBINDIR=\"$(bindir)\" -c $<
term.$(O): term.c term.h plot.h setshow.h bitmap.h $(CORETERM)
$(CC) -c $(CFLAGS) $(TERMFLAGS) term.c
version.$(O): version.c
WINDEPS = win/wgnuplib.h win/wcommon.h win/wresourc.h
winmain.$(O): win/winmain.c win/wgnuplib.h win/wtext.h plot.h
$(CC) -c $(CFLAGS) -DHELPFILE=\"$(HELPFILE)\" win/winmain.c
wgnuplib.$(O): win/wgnuplib.c $(WINDEPS)
$(CC) -c $(CFLAGS) win/wgnuplib.c
wmenu.$(O): win/wmenu.c $(WINDEPS)
$(CC) -c $(CFLAGS) win/wmenu.c
wtext.$(O): win/wtext.c $(WINDEPS)
$(CC) -c $(CFLAGS) win/wtext.c
wpause.$(O): win/wpause.c wxterminal/wxt_term.h $(WINDEPS)
$(CC) -c $(CFLAGS) win/wpause.c
wprinter.$(O): win/wprinter.c $(WINDEPS)
$(CC) -c $(CFLAGS) win/wprinter.c
wgraph.$(O): win/wgraph.c $(WINDEPS)
$(CC) -c $(CFLAGS) win/wgraph.c
wgnuplot.mnu: win/wgnuplot.mnu
$(CP) $^ [email protected]
wxt_gui.$(O): wxterminal/wxt_gui.cpp wxterminal/wxt_gui.h $(WX_LOCATION)
$(CXX) -c $(CFLAGS) $(CXXFLAGS) $(CAIRO_CFLAGS) wxterminal/wxt_gui.cpp
gp_cairo.$(O): wxterminal/gp_cairo.c wxterminal/gp_cairo.h
$(CC) -c $(CFLAGS) $(CXXFLAGS) $(CAIRO_CFLAGS) $(PANGO_CFLAGS) wxterminal/gp_cairo.c
texticon.ico: grpicon.ico
grpicon.ico: geticon.exe win/wgnuplot.rc
./geticon win/wgnuplot.rc
geticon.exe: win/geticon.c
$(LD) $(LDFLAGS) -o [email protected] win/geticon.c
$(HELPFILE): doc2rtf.exe $(D)gnuplot.doc win/wgnuplot.hpj
./doc2rtf $(D)gnuplot.doc win/gnuplot.rtf
$(HCW) -c -e win/wgnuplot.hpj
doc2rtf.exe: $(D)doc2rtf.c $(D)termdoc.c $(D)xref.c
$(LD) $(LDFLAGS) -o [email protected] -DWINDOWS_NO_GUI $(CFLAGS) -I. -I$(D:/=) -I$(T:/=) $^
$(M)bf_test.exe : bf_test.c dbinary.$(O) alloc.$(O)
$(LD) $(LDFLAGS) $(CFLAGS) -U_Windows -o [email protected] $^
(cd $(M) ; ./bf_test.exe )
dbinary.$(O): binary.c
$(CC) -c $(CFLAGS) -U_Windows -o [email protected] $<
ALL_TERMINALS_DOC=1
ifdef ALL_TERMINALS_DOC
SORT_TERMINALS=1
ifdef SORT_TERMINALS
allterm.h: $(CORETERM)
@echo "Building allterm.h"
@for e in `egrep "^[ ]*START_HELP" $(CORETERM) |\
$(GNUSORT) -f -t':' -k2` ; do \
f=`echo $$e |cut -d\: -f1` ; s=`echo $$e | cut -d\: -f2` ;\
sed -n "/^[ ]*$$s/,/^[ ]*END_HELP/p" $$f ; \
done >[email protected]
else
allterm.h: $(CORETERM)
@echo "Building allterm.h"
@cat $(T)*.trm > allterm.c
$(CPP) $(CFLAGS) -I$(T:/=) -DTERM_DRIVER_H -DTERM_HELP allterm.c | \
sed '/^ *$$/d;/^#/d' > allterm.h
@rm -f allterm.c
endif
doc2tex.exe: $(D)doc2tex.c $(D)termdoc.c allterm.h
$(LD) $(LDFLAGS) -o [email protected] -DWINDOWS_NO_GUI -DALL_TERM_DOC $(CFLAGS) \
-I. -I$(D:/=) -I$(T:/=) $(D)doc2tex.c $(D)termdoc.c
else
doc2tex.exe: $(D)doc2tex.c $(D)termdoc.c
$(LD) $(LDFLAGS) -o [email protected] -DWINDOWS_NO_GUI $(CFLAGS) -I. -I$(D) -I$(T) $^
endif
gnuplot.tex: $(D)gnuplot.doc doc2tex.exe
doc2tex $(D)gnuplot.doc gnuplot.tex
gnuplot.dvi: gnuplot.tex $(D)titlepag.tex
cp gnuplot.tex $(D)gp_tex2.tex
cp $(D)../VERSION $(D)
cd $(D) && latex gp_tex2.tex && latex gp_tex2.tex && latex gp_tex2.tex
mv $(D)gp_tex2.dvi gnuplot.dvi
rm -f $(D)gp_tex2.*
gnuplot.ps: gnuplot.dvi
dvips -o gnuplot.ps gnuplot.dvi
gnuplot.pdf: gnuplot.tex $(D)titlepag.tex
cp gnuplot.tex $(D)gp_tex2.tex
cp $(D)../VERSION $(D)
cd $(D) && pdflatex gp_tex2.tex && pdflatex gp_tex2.tex && pdflatex gp_tex2.tex
mv $(D)gp_tex2.pdf gnuplot.pdf
rm -f $(D)gp_tex2.*
clean:
$(RM) config.h *.$(O) wgnuplot.map wgnuplot.res win/gnuplot.rtf
$(RM) wxterminal/*.$(O)
$(RM) doc2rtf.exe win/wgnuplib.res wgnuplib.map wgnuplot.lib
$(RM) $(M)bf_test.exe *.ico geticon.exe allterm.h allterm.c
$(RM) gnuplot.tex gnuplot.dvi gnuplot.ps gnuplot.pdf
realclean: veryclean
veryclean: clean
$(RM) wgnuplot.exe wgnuplot.hlp wgnuplot.mnu wgnuplot.gid
$(RM) $(M)binary[123] $(M)fit.log $(M)soundfit.par
install: default
mkdir -p $(DESTDIR)
cp wgnuplot.exe $(DESTDIR)/wgnuplot.exe
cp win/wgnuplot.mnu $(DESTDIR)/wgnuplot.mnu
cp wgnuplot.hlp $(DESTDIR)/wgnuplot.hlp
cp pgnuplot.exe $(DESTDIR)/pgnuplot.exe
mkdir -p $(DESTDIR)/share/PostScript
cp ../term/PostScript/*.ps $(DESTDIR)/$(GNUPLOT_PS_DIR)

lowjoel
Moderator
Moderator
Posts: 1511
Joined: Sun Jun 19, 2005 11:37 am
Location: Singapore
Contact:

Post by lowjoel » Sat Apr 14, 2007 10:27 am

I'm probably not gunna read the entire makefile - it's kinda long, but I think the answer is quite obvious. The IDE doesn't interpret makefiles, so the path to the binary must be given to wxDev-C++. Go to project options -> Build Options -> Executable Output Directory. Set the path to b the path to your binary, and then Check the Override Output Filename checkbox just below it, and then specify the name of your binary.

Joel

mstampfer1
Earned a small fee
Earned a small fee
Posts: 13
Joined: Fri Apr 13, 2007 11:34 pm

Post by mstampfer1 » Sat Apr 14, 2007 11:20 am

I'm probably not gunna read the entire makefile - it's kinda long, but I think the answer is quite obvious. The IDE doesn't interpret makefiles, so the path to the binary must be given to wxDev-C++. Go to project options -> Build Options -> Executable Output Directory. Set the path to b the path to your binary, and then Check the Override Output Filename checkbox just below it, and then specify the name of your binary.
Thanks Joel.

I tried to change the output binary name in Project Options->Build Options->Executable Output Directory but this exe filename is not generated by the IDE (and I still get the error message). The IDE does however generate the binaries geticon.exe, pgnuplot.exe, wgnuplot.exe as per the Makefile and these run properly.

What do you mean by the IDE doesn't interpret Makefiles? This should be done by mingw-make.exe anyway, right? How does the output filename in the Project Options get used if the output filename(s) is anyway specified as a -o option in one of the targets? Do I need to add a target to the Makefile to make the compile work from within the IDE?

Marcel

lowjoel
Moderator
Moderator
Posts: 1511
Joined: Sun Jun 19, 2005 11:37 am
Location: Singapore
Contact:

Post by lowjoel » Sun Apr 15, 2007 5:33 am

You specify the output file as part of a makefile, so only make knows the file of the binary that it is linking. For example, if your makefile had this:

BIN = MYAPP
LIB = .dll
EXE = .exe

all: $(OBJS) $(LIBOBJS)
$(CC) $(LINKOPTS) -o $(BIN)$(EXE)
$(CC) $(LINKOPTS) -o $(BIN)$(LIB)

Or something like that. Two files would be generated, and since wxDev-C++ is completely kept in the dark about the makefile, it won't know which file to run.

The IDE does not generate ANY files. The IDE simply calls make to do all those stuff. You have overridden wxDev-C++'s internal makefile generation in favour of your own, so whatever files your makefile dictates would be created wxDev-C++ will not know of them.

wxDev-C++ doesn't care about whether you give a target for it to call to execute your program. Basically by specifying your own makefile you're telling the IDE to not meddle in your build process and let you handle all the building and running stuff etc. The IDE runs the binary you gave in the Override Output Filename field. If it is not checked, the IDE generates its own filename and tells the linker that that's the output filename they want.

It's very complex, and I'm not sure if you get me at all, but basically you shouldn't be combining two build processes together (either you use make, or you use the IDE to generate makefiles).

Joel

mstampfer1
Earned a small fee
Earned a small fee
Posts: 13
Joined: Fri Apr 13, 2007 11:34 pm

Post by mstampfer1 » Sun Apr 15, 2007 3:24 pm

lowjoel wrote:You specify the output file as part of a makefile, so only make knows the file of the binary that it is linking. For example, if your makefile had this:

BIN = MYAPP
LIB = .dll
EXE = .exe

all: $(OBJS) $(LIBOBJS)
$(CC) $(LINKOPTS) -o $(BIN)$(EXE)
$(CC) $(LINKOPTS) -o $(BIN)$(LIB)

Or something like that. Two files would be generated, and since wxDev-C++ is completely kept in the dark about the makefile, it won't know which file to run.

The IDE does not generate ANY files. The IDE simply calls make to do all those stuff. You have overridden wxDev-C++'s internal makefile generation in favour of your own, so whatever files your makefile dictates would be created wxDev-C++ will not know of them.

wxDev-C++ doesn't care about whether you give a target for it to call to execute your program. Basically by specifying your own makefile you're telling the IDE to not meddle in your build process and let you handle all the building and running stuff etc. The IDE runs the binary you gave in the Override Output Filename field. If it is not checked, the IDE generates its own filename and tells the linker that that's the output filename they want.

It's very complex, and I'm not sure if you get me at all, but basically you shouldn't be combining two build processes together (either you use make, or you use the IDE to generate makefiles).

Joel
Thanks Joel.

I'm one step closer to building this project. The error was simple on my part as I didn't understand your previous post in that the custom filename is not only used for the generated .exe file, it is also used to run the application.

The only thing remaining is to run the debugger with the Makefile I'm using as the IDE doesn't run the compile with a debug info enabled if its not done by the makefile.

I tried changing the OPTLEVEL and DEBUGLEVEL by setting OPTLEVEL=0 and DEBUGLEVEL=2 in the Makefile but this didn't help. I still get the message:

"Your project doesn't have debugging information. Do you want to enable debugging and rebuild your project?"

This error message comes up in a loop each time the IDE finishes rebuilding the project.

Is there some way to tell the IDE that the code has indeed been compiled with debugging information even if the settings are in the Makefile?

Marcel

lowjoel
Moderator
Moderator
Posts: 1511
Joined: Sun Jun 19, 2005 11:37 am
Location: Singapore
Contact:

Post by lowjoel » Wed Apr 18, 2007 11:31 am

Hm. I'm not sure, this is kinda tricky as... whether debug information is compiled in is reported by the debugger itself and not the compiler (i.e. debug settings is not detected by command line flags). The message you get is simply a 'convenience' for users to quickly enable debug info and build their project.

I'm not sure how OPTLEVEL and DEBUGLEVEL works in your makefile, but I'm quite certain that since the debugger complains of missing symbols your application most probably doesn't contain debug symbols.

Joel

mstampfer1
Earned a small fee
Earned a small fee
Posts: 13
Joined: Fri Apr 13, 2007 11:34 pm

Post by mstampfer1 » Wed Apr 18, 2007 2:39 pm

Solved. mingw32-gcc compiles in the correct debugger information if the -g3 switch is used.

Thanks

lowjoel
Moderator
Moderator
Posts: 1511
Joined: Sun Jun 19, 2005 11:37 am
Location: Singapore
Contact:

Post by lowjoel » Thu Apr 19, 2007 10:13 am

I think you were supposed to accept the post of the person who answered you, not just to mark your post closed, lol. But never mind.

Joel

mstampfer1
Earned a small fee
Earned a small fee
Posts: 13
Joined: Fri Apr 13, 2007 11:34 pm

Post by mstampfer1 » Thu Apr 19, 2007 4:12 pm

Cheers.

I'll do it next time and I'm sure there are many more question to come.

wxDev-C++ is really great but I'm just getting used to it. Now that I know how to make it use exiting makefiles it has proven to be extremely versatile for working on open source unix projects under windows. Really a great tool!

Post Reply