Qt3.3 XMLをQt4に変換するためのuic3の使用に関する多くの情報が見つかりましたが、Qt4(4.0)で生成された.uiファイルで何を変更したり探すべきかについては何も教えていません。それはコンパイルに失敗します。ここでは、それぞれの.uiファイルでuicを実行しようとしたときの出力例を示します(参考のため、最新版のFirewall Builderをコンパイルしています)。ご覧のとおり、いくつかのファイルが失敗し、 'asklibforcopydialog_q.ui'成功しましたQt UICバージョン4.2.1でQt Designer 4.0 XMLファイルをコンパイルするにはどうすればよいですか?
[[email protected] libgui]$ ls *.ui | xargs -n1 uic |more
uic: File generated with too old version of Qt Designer
File 'aboutdialog_q.ui' is not valid
uic: File generated with too old version of Qt Designer
File 'actionsdialog_q.ui' is not valid
uic: File generated with too old version of Qt Designer
File 'addressrangedialog_q.ui' is not valid
uic: File generated with too old version of Qt Designer
File 'addresstabledialog_q.ui' is not valid
/********************************************************************************
** Form generated from reading ui file 'asklibforcopydialog_q.ui'
**
** Created: Tue Dec 20 10:03:26 2011
** by: Qt User Interface Compiler version 4.2.1
**
** WARNING! All changes made in this file will be lost when recompiling ui file!
********************************************************************************/
(many more lines snipped)
So. uic
の古いバージョンを見つけようとする必要がありますか? または、このバージョンでコンパイルできるようにするためにXMLに行うことができる比較的簡単な(regex、sed/awk)変更がありますか?同じメジャーバージョン内で下位互換性のないコンパイラを作ることは想像もできませんが、ここにあります。上記のように動作するXMLファイルの予備調査はコンパイルされ、uic: File generated with too old version of Qt Designer
エラーを投げたものはXMLの明白な違いを明らかにしませんが、XMLの得意先です。
私がスタックオーバーフローを助けてください、あなたは私の唯一の希望です!
Qt Designerでuiファイルを開いて保存しようとするとよいでしょう。 – hmuelner