← Back to team overview

brewtarget-devs team mailing list archive

Windows 7 - Development Setup

 

Hi Everyone,

Following on from my introduction post yesterday I thought I would detail
my development setup a little more. If any experienced heads can see where
I may have gone off track just let me know.

I'm working on a Windows 7 PC and am currently using the MinGW 4.4 compiler
with precompiled Qt 4.8.4 (for MinGW 4.4).

I've also installed cmake, sqlite, msysgit.

My build process goes roughly like this.

run cmake gui, "configure" and "generate" for MSYS Makefiles. First time
through configuring I needed to point to the phonon library location, but
everything else was found ok.

Open up my msysgit cmd window and navigate to the build directory

Run "make" and let the compiler/linker do it's thing. No errors produced.
Being a debug (or non release) build the exe file ends up quite large
(around 54MB).

Copy the newly complied exe file into my installed brewtarget location
(existing .exe is renamed).

Execute and we're away.

All seems to be good, however when the program attempts to clear out all
steps from a mash - either by manually removing them one at a time or when
a call is made to "removeAllMashSteps" an exception gets thrown that
terminates the program. A very small amount of debugging brought up the
error of "invalid parameter passed to c runtime function". Just observing
the program's behaviour the mash steps actually get cleared/removed prior
to the exception. This is obviously not a bug in the code because the
distributed exe doesn't behave like this.

I haven't compiled my Qt libraries from source, which is something I
believe that Philip has done so perhaps that's the first thing I should
look at doing. Although not having nmake installed I'm not sure the best
way to attack this task.

Another problem I have noticed is that if I attempt to do a release build
(and comment out the lines in the MinGW files that throw an error as
directed) the brewtarget exe produced doesn't run - generating an error of
"The procedure entry point _ZNK11QMetaObject4castEPK7QObject could not be
located in the dynamic link library QTCore4.dll".

I'm thinking that these two scenarios are related somehow - again due to
the fact I am using precompiled Qt library.

Should I just attempt to compile my Qt libs and see if the problem goes
away? Is this achievable without having nmake installed?

Ben

Follow ups