PDA

View Full Version : Hi All,



manivannan_1984
22nd December 2006, 11:37
Hi All,

First I like to say... Happy Christmas to All...

I am working on Qt3.3.6 version.. I am working on thrid party framework called "Amira" which is also built in VS2005 with Qt3.3.5.

I am developing a new module using their Framework.. While building I am getting lot of link errors (related to all the Qt classes I used .). But I have added Qt include and lib paths correctly..

Can u pls help me to fix this, What might be reason for link errors..? I am attaching my build log herewith for your reference..

Thanks ..

Mani

aamer4yu
22nd December 2006, 12:10
Did u use Q_OBJECT in the classes ??
also did u include the required header files ??

manivannan_1984
2nd January 2007, 07:06
Yes I have used QObject and also all the necessary inlcudes there... The same code work for your third party client called "Amira". They r using Qt3.3.5.

But we have Qt3.3.6 version, I hope version is not the reason for this problem..

Alienxs
3rd January 2007, 01:27
May be it is, 'cause there are some stuff, some properties that change from version to version
and that my friend its a little problem but you will have to deal with, use the class documentation and see what's out of place, may be thats the problem, because it use to happen to me everytime i migrate an app from a version to another

Alienxs
3rd January 2007, 01:40
Hi again, man look im almost too sure the thing it's a version issues because there are some properties or class redefinition, that took place from the older version to this one, you have to check wich objects produce the error(s), and change the libraries of this widgets or look at the properties and check the data types from the old version match it with the new one.

manivannan_1984
3rd January 2007, 09:51
I dont think there is much differences between Qt3.3.5 and Qt3.3.6. It should be work with any changes..

The thing is we bought a third tool called "Amira" and installed in our system. It is using Qt3.3.5, inside the installation folder it have qt-mt335.dll.

I am developing a new module using that "Amira" framework.. I am having Qt3.3.6 on my system. When I work on Qt with the Amira framework, I am getting the mentioned link errors. Even if I add a single of QT stuffs its giving link errors..

Regards,
Mani:confused:

wysota
3rd January 2007, 10:37
Looks like you are not linking with Qt library. Did you tell your app to link against Qt?

manivannan_1984
3rd January 2007, 13:53
I am using VS 2005. I have Qt lib path correcty...

wysota
3rd January 2007, 15:15
I am using VS 2005. I have Qt lib path correcty...

That doesn't mean you are linking with Qt. It only means you can link with Qt. I have more than a hundred of libraries in my system but it doesn't mean I link them all to my applications. Check the command visual studio executes to see if it actually tries to link with qt-mt.

manivannan_1984
4th January 2007, 06:55
I have added qt-mt336.lib to Project Properties->Linker->input and the lib path in the Linker->General->Additional Libray Directories..

Actually I dont have .pro file.. I removed the qt lib from project and checked, I am getting the same link errors which I got previously.. So as you said it is not linking with qt lib properly.. How to do tht..? I have added lib to project properties ..


Thanks,
Mani

wysota
4th January 2007, 11:40
Well... I'd suggest using a .pro file, but if you can't then consult your compiler/IDE manual on how to add libraries to a project.

manivannan_1984
4th January 2007, 12:34
Since the project file will be created by third party tool called "Amira". That itself includes all the necessary framework inlcudes and libs.. so i dont have .pro file..

I am adding only Qt includes and libs manaually in order to use Qt Stuff.

If I work on Qt with out that Framework no issues.. Problem may be in that tool also..

Thanks for your suggesstions....

Regards,
Mani;)

wysota
4th January 2007, 13:41
If you're creating a library (and I think you are) then maybe you can use the .pro file just for this library and let others using the lib worry about how to use it later :) Of course this is only because you don't know how to add a dependency to visual studio :) Unfortunately I can't help you with that as I don't use it myself on a daily basis and when I do, I use qmake to manage the project.

Chicken Blood Machine
4th January 2007, 21:25
Hi again, man look im almost too sure the thing it's a version issues because there are some properties or class redefinition, that took place from the older version to this one, you have to check wich objects produce the error(s), and change the libraries of this widgets or look at the properties and check the data types from the old version match it with the new one.

3.3.5 -> 3.3.6 is a minor version change. According to Trolltech's policies, compatibility will not break.

Chicken Blood Machine
4th January 2007, 21:27
Since the project file will be created by third party tool called "Amira". That itself includes all the necessary framework inlcudes and libs.. so i dont have .pro file..

I am adding only Qt includes and libs manaually in order to use Qt Stuff.

If I work on Qt with out that Framework no issues.. Problem may be in that tool also..

Thanks for your suggesstions....

Regards,
Mani;)

Is QT_DLL defined in your VS project?

manivannan_1984
5th January 2007, 12:27
Is QT_DLL defined in your VS project?

Yes it is there...

But now the problem has been fixed. As I told you already, the third party tool called "Amira" is developed in Qt3.3.5. But before tht I was using 3.3.6. Now I installed 3.3.5 and tried the same, it is working now...

wysota
5th January 2007, 14:05
Maybe some paths are hardcoded somewhere or there is a clash with some other component using an older version of Qt.

manivannan_1984
8th January 2007, 08:34
Yes thats correct. They have qt3.3.5 lib and dll in their bin folder, I think thats why some clauses happened...


Thank you very much for your valuable suggestions...

Regards,
Mani