0

Windows7でQt4.8.4を正常にビルドしましたが、そのバージョンに対してQtJambiをビルドしようとしています。Qt Jambiソースディレクトリでantを実行してビルドを開始すると、途中でしか取得できず、次のようになります。

cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MD -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_QTJAMBI_IMPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"..\..\qt-everywhere-opensource-src-4.8.4\include\QtCore" -I"..\..\qt-everywhere-opensource-src-4.8.4\include" -I"..\qtjambi" -I"..\common" -I"C:\Program Files\Java\jdk1.7.0_09\include" -I"C:\Program Files\Java\jdk1.7.0_09\include\win32" -I"." -I"..\..\qt-everywhere-opensource-src-4.8.4\include\ActiveQt" -I"release" -I"..\..\qt-everywhere-opensource-src-4.8.4\mkspecs\default" -Forelease\ @C:\Users\TYLERS~1\AppData\Local\Temp\nmFBCC.tmp qtjambishell_QLocale.cpp

..\cpp\com_trolltech_qt_core\qtjambishell_QLocale.cpp(885) : error C2084: function 'jobject Java_com_trolltech_qt_core_QLocale__1_1qt_1toCurrencyString_1int_1String__JILjava_lang_String_2(JNIEnv *,jobject,jlong,jint,jobject)' already has a body

..\cpp\com_trolltech_qt_core\qtjambishell_QLocale.cpp(808) : see previous definition of 'Java_com_trolltech_qt_core_QLocale__1_1qt_1toCurrencyString_1int_1String__JILjava_lang_String_2'

..\cpp\com_trolltech_qt_core\qtjambishell_QLocale.cpp(909) : error C2084: function 'jobject Java_com_trolltech_qt_core_QLocale__1_1qt_1toCurrencyString_1long_1String__JJLjava_lang_String_2(JNIEnv *,jobject,jlong,jlong,jobject)' already hasa body

..\cpp\com_trolltech_qt_core\qtjambishell_QLocale.cpp(832) : see previous definition of 'Java_com_trolltech_qt_core_QLocale__1_1qt_1toCurrencyString_1long_1String__JJLjava_lang_String_2'

..\cpp\com_trolltech_qt_core\qtjambishell_QLocale.cpp(933) : error C2084: function 'jobject Java_com_trolltech_qt_core_QLocale__1_1qt_1toCurrencyString_1char_1String__JCLjava_lang_String_2(JNIEnv *,jobject,jlong,jchar,jobject)' already has a body

..\cpp\com_trolltech_qt_core\qtjambishell_QLocale.cpp(856) : see previous definition of 'Java_com_trolltech_qt_core_QLocale__1_1qt_1toCurrencyString_1char_1String__JCLjava_lang_String_2'

NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.

このエラー番号に関するMSDNエントリがいくつかあります-http://msdn.microsoft.com/en-us/library/dt309377.aspxおよびhttp://msdn.microsoft.com/en-us/library/s99zy1dh ( v = vs.100).aspx。これらのどちらも実際にはあまり役に立ちません。

誰かが私が試みていることをうまくやったことがありますか?

4

2 に答える 2

0

VS2010 での QtJambi のビルドは機能します。

Qt SDK をどこから入手したか、および QtJambi ソースをどこから入手したかを確認してください。

Nokia または Digia SDK または Qt Project を使用している必要があります。https://qt-project.org/downloadsの 4.x など(5.x は、現時点ではおそらく 2014 年初頭には動作しないことに注意してください)。

https://qt.gitorious.org/qt-jambi/qtjambi-communityの git ツリーから作業する必要があります(これは唯一の維持されているツリーです)。使用している commit-id を確認してください。

Win7 用の git がない場合は、インストール後にhttp://git-scm.com/download/winを参照してください。「git bash」シェルを開き、クリーンなディレクトリからソースをチェックアウトします。git clone git://gitorious.org/qt-jambi/qtjambi-community.git

VS2010 で提供されているスタート メニュー オプションを使用して、Win7 で cmd.exe シェルを正しく起動したことを確認できますか。Visual Studio 2010 Command Promptここから、環境変数 JAVA_HOME (JDK を指す) と QTSDK (MS2010 のデスクトップ ビルドを含む Qt SDK トップレベル ディレクトリを指す) を設定したことを確認します。

私の推測では、正しい Qt Jambi ソース ツリーを使用していません。2011 年 12 月以降、4.8.x サポート用のパッチがツリーに存在します。これは、発生している問題に対処しているようです。

于 2013-02-26T16:58:47.203 に答える
0

gitorious で QtJambi トランクから QtJambi を正常にコンパイルしました。次に、Qt-project.org の Qt 4.8.4 SDK を使用しました。http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-win-opensource-4.8.5-vs2010.exe 数か月使用しましたが、うまく機能します:)。

QtJambiをお楽しみください!

于 2013-07-08T11:51:18.147 に答える