PDA

View Full Version : Entry Point Not Found Error



ToddAtWSU
6th February 2006, 17:46
I am using VisualStudio .NET and can get my project to build fine. But when I try to run it, I get an error like this:

procedure entry point XXXXX could not be located in the dynamic link library YYYYY

I am getting these 2 errors based on the order I list the libraries under the properties portion for my project in VS.NET and they are:

XXXXX = ...QAbstractTableModel@...
YYYYY = QtCored4.dll

and

XXXXX = ...QPushButton@...
YYYYY = QtGuid4.dll

Has anyone else seen this error and know how to fix it, because it confuses me a lot. I have tried to list these 2 libraries last and first, but no matter the orientation, whichever is listed first of the two, it's respective error I get to see. Thanks!

wysota
6th February 2006, 18:37
Don't you use a .pro file to manage your projects? Is this a Qt related question at all?

ToddAtWSU
6th February 2006, 18:59
I thought it might be a Qt problem because it was having problems with Qt dlls and function calls. Sorry if it wasn't.

wysota
6th February 2006, 19:11
As far as I can see it is a VS.NET problem. You're not using .pro files, are you?

ToddAtWSU
8th February 2006, 14:47
I don't think I am using a .pro file. I am new with .NET, but as far as I know I don't have a .pro file. I have a .sln file, but that is as far as I know. I just can't figure out what this problem is. Could it be something with upgrading to Qt 4.1? It used to build when I had Qt 4.0.1. Thanks!

McToo
8th February 2006, 15:05
Have you run dumpbin on the .dlls to see if they do export those functions?

Did you clean and rebuild project after upgrading?

Basically, the error is saying that although those functions were defined in a .h file, they cannot be found in the library. This may be because the name has been mangled differently between versions (hence the clean and rebuild) or they've not been compiled in. You're building Qt in Debug mode, right?

Take a look through the Qt sources for the functions and make sure there's no #ifdef _DEBUG around that might be screwing things up for you.

HTH

McToo

ToddAtWSU
8th February 2006, 15:35
Have you run dumpbin on the .dlls to see if they do export those functions?
What is dumpbin and how does it work? I have looked this up online but really don't understand what it does.


Did you clean and rebuild project after upgrading?
As far as cleaning and rebuilding, I have only done this 10+ times hoping that each time a different outcome would occur! :)


You're building Qt in Debug mode, right?
Yes this is being built and run in Debug mode.


Take a look through the Qt sources for the functions and make sure there's no #ifdef _DEBUG around that might be screwing things up for you.
I looked through all the code that had the word QAbstractTableModel in it and none of the files had a #ifdef _DEBUG in it.

Thanks for all your continued help. It is much appreciated!

McToo
8th February 2006, 16:04
DUMPBIN is a MS utility that shows you what functions, data, load points etc. the DLL is exporting.

I'd use it thus: DUMPBIN /EXPORTS QtCored4.dll|more and have a look for QAbstractTableModel (shame you don't get grep with Windoze :rolleyes: ).

If DUMPBIN reports the existance of the function, then have a search on your hard drive for other QtCored4.dll's that might be in your PATH. (This one has caught me out sooooo many times! :o ) In fact, it might be an idea to rename every other QtCored4.dll on your hard drive to QtCored4.dll.backup or similar, so there's no chance of it being loaded inadvertantly.

HTH

McToo

ToddAtWSU
8th February 2006, 16:26
I fixed it thanks to your help! :D For some reason, when I updated from Qt 4.0.1 to Qt 4.1.0, the dlls in the Windows/system folder never updated, so I was accessing the 4.0.1 dlls instead of the 4.1.0. By updating the dlls to the proper ones, the program runs! Thanks so much!!! :cool:

McToo
8th February 2006, 16:34
I've practically got no ass left from it being bitten so many times by that scenario! :D

Glad I could help!

McToo

yop
8th February 2006, 19:31
...then have a search on your hard drive for other QtCored4.dll's that might be in your PATH...Dll hell (http://en.wikipedia.org/wiki/DLL_hell) strikes again