PDA

View Full Version : Minimum requirements for application



b1
14th September 2006, 23:49
My apologies if this is in the wrong list....

I have created a simple database application with QT4.1 and MySql. It works well enough. My problem is that a couple of machines on the local network crash when I run it.

There are 6 main machines, 3 x XP, 2 x 2k, 1 x 98. They all work (as does my linux version). They all run the application from the server. They also work with the application installed locally.
We had a work experience student in this week and needed another machine for them to do some data entry. We built an older machine (removed from service <6 months ago due to HD failure) from scratch with a new install of 98.

On this older machine, the application I wrote would not run and would crash every time on the opening screen with a message indicating "qtgui4.dll caused an illegal instruction". We replaced the OS with 2000, no change. Tried 2 other old machines and still no change.

All the older machines are PII 200 MHz - 500 MHz CPUs with 64 Mb - 128 Mb RAM. All have latest VGA drivers and network drivers, etc. The existing 6 PCs that work are all new and are 1.8 GHz 256 Mb or better.

Is there a minimum requirement that the client PC must be before it will run a QT4 application? Is there some way to test resource requirements to find out what the minimum requirement is?

Any thoughts, suggestions or suggested reading would be appreciated.

Thank you, B1.

jacek
15th September 2006, 00:02
qtgui4.dll caused an illegal instruction
It looks like the problem is in compiler which generated code that works only with new processors.

I don't know which compiler you have used, but g++ for example has a -mcpu option, which might help.

Here's a similar problem: http://www.qtcentre.org/forum/f-installation-5/t-qt411-and-later-fail-on-windows-2000-1636.html (look for Wurgl's posts).

b1
15th September 2006, 00:29
Thanks Jacek,

That is very good advice and makes a lot of sense.

A use mingw on w2k for this particular app, so I will try it later today. Haven't had the problem under Linux but haven't tried on an older machine yet either. At least I will know where to start.

Thanks again, I will let you know how I go.

Regards, B1.

wysota
15th September 2006, 00:38
Remember, that you have to recompile Qt and not your application.

b1
15th September 2006, 00:49
Yes, thanks Wysota.

I did work that out after a couple of minutes of thinking it through and analysing my project files first...D'OH.

This will have to be a later in the day task as I have too many other interruptions to deal with now.

Again, thanks guys for the quick responses. I do appreciate it...so does my hairdresser....

Cheers, B1.

high_flyer
15th September 2006, 12:39
I do appreciate it...so does my hairdresser....

Your hairdresser??:eek:
How so?

Spockmeat
15th September 2006, 14:53
I'd assume in the sence that he won't be pulling all his hair out.

By the way, I've found that you have to be careful when compiling applications on winnt/2k/xp boxes and trying to run the applications on win9x boxes. They use different kernels/libraries/etc. Personally, I'd try compiling the application on a win98 box just to make sure, because I have run into issues of that nature before.

b1
16th September 2006, 12:20
Spockmeat got it one...I have some hair left!

I have just finished recompiling QT4 with the -march=i586 switch and I will test my app on Monday back at the office.

I will post back here with the results.

Thanks everyone, B1.

b1
17th September 2006, 23:29
IT worked!!!!

Jacek was spot on the money, thank you.

For the benefit of others i did the following:

In the file <qt directory>\mkspecs\win32-g++\qmake.conf added "-march=i586" to the "QMAKE_CFLAGS =" line.
Recompiled QT with all required options (-qt-sql-mysql, etc) and hey presto it all worked.

The new ".dll"s were transfered along with my recompiled app to the server and now it all works.

Thanks to every one who offered help and advice.

Regards, B1.