Could you elaborate on this from the README a little bit
"The generated wrappers are pre-generated and checked-in for Qt 4.6.1, so you only need to build and run the
generator when you want to build additional wrappers or you want to upgrade/downgrade to another Qt version, but this requires updating the typesystems as well."
If I wanted to upgrade to the current version Qt 4.6.3, what typesystem changes need to be made to generate bindings. Are they feasible or should I wait for the next updated-commit?
Thank you
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Upgrading to a new Qt 4.X version higher than 4.6.1 will always work, because the Qt API always stays compile compatible.
Thus, you can easily build PythonQt with Qt 4.6.3 or Qt 4.7 preview or the git master version using the checked in generated wrappers.
BUT, since only classes that are given in the typesystem are wrapped, you will not get access to new APIs that are added,
so if you want e.g. QML/QtDeclarative from Qt 4.7, you will need to extend the typesystem by adding the new classes, enums, structs and so on.
Building the checked in wrappers against a lower Qt version than 4.6.1 is a problem, because the checked in wrappers are based on Qt 4.6.1 and thus they will not compile on a lower Qt version because they access methods and classes that where not present before. Thus you will need to run the pythonqt_generator against your Qt version and it will only generate wrappers for methods that your Qt version provides.
Typically it is not required to modify the typesystem for downgrading, it should normally be enough to run the generator with your Qt version.
regards,
Florian
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Could you elaborate on this from the README a little bit
"The generated wrappers are pre-generated and checked-in for Qt 4.6.1, so you only need to build and run the
generator when you want to build additional wrappers or you want to upgrade/downgrade to another Qt version, but this requires updating the typesystems as well."
If I wanted to upgrade to the current version Qt 4.6.3, what typesystem changes need to be made to generate bindings. Are they feasible or should I wait for the next updated-commit?
Thank you
Let me explain this further:
Upgrading to a new Qt 4.X version higher than 4.6.1 will always work, because the Qt API always stays compile compatible.
Thus, you can easily build PythonQt with Qt 4.6.3 or Qt 4.7 preview or the git master version using the checked in generated wrappers.
BUT, since only classes that are given in the typesystem are wrapped, you will not get access to new APIs that are added,
so if you want e.g. QML/QtDeclarative from Qt 4.7, you will need to extend the typesystem by adding the new classes, enums, structs and so on.
Building the checked in wrappers against a lower Qt version than 4.6.1 is a problem, because the checked in wrappers are based on Qt 4.6.1 and thus they will not compile on a lower Qt version because they access methods and classes that where not present before. Thus you will need to run the pythonqt_generator against your Qt version and it will only generate wrappers for methods that your Qt version provides.
Typically it is not required to modify the typesystem for downgrading, it should normally be enough to run the generator with your Qt version.
regards,
Florian