2012-05-04 2 views
5

Windows版Qt 4.7.2に取り組んでいます。 Makefile、Makefile.Debug、Makefile.Releaseを生成しました。私が使用しようとするただし、実行可能ファイルを構築するためにMINGW32を-作る、私は次のエラーを取得する:メークファイルにセパレータエラーが表示されない

mingw32-make -f Makefile.Debug all 
mingw32-make[1]: Entering directory `C:/Qt/4.7.2/src/plugins/sqldrivers/mysql' 
Makefile.Debug:61: *** missing separator. Stop. 
mingw32-make[1]: Leaving directory `C:/Qt/4.7.2/src/plugins/sqldrivers/mysql' 
mingw32-make: *** [debug-all] Error 2 
+1

nmake/msvcメイクファイルとmingwを混在させていますか? –

+0

Makefile.Debugのライン61(およびその近くのライン)を表示するのはどれくらい難しいですか? – Jens

+0

行61には、 "<<"しかありません。私はそれの前にタブを置く、そして今それは別のエラーを与える。私はそれを下に尋ねました。 – gizemdemirel

答えて

8

ほとんど常にあなたが代わりで始まるタブで始める必要がありラインを持っていることを意味し、「区切りがありません」スペース。

0

Makefile.debugファイルの61行目の内容を実際に見せてくれた方は、より良い回答を得ることができました。 "Missing separator"はmakeのバージョンの "syntax error"です。それは基本的にmakeがmakeファイル内で見つけられない行を作ることを意味します。

ウィリアム・パーセル(William Pursell)が言及しているように、あなたのレシピ・ラインを紹介するスペースがありますが、他にもたくさんの理由があります。おそらく、ターゲットと前提条件の間の ":"、または変数割り当ての "="を忘れていた可能性があります。他にも可能性があります。

1

"< <"は、Makefile.Debugファイルの61行目にあります。 William Pursellが示唆するように、私は "< <"の前にタブを置いた。私はライン61問題を解決したが、今私は別の問題を抱えている:

mingw32-make[1]: *** [tmp\obj\debug_shared\qsqlmysqld_resource.res] Error 2 
mingw32-make[1]: Leaving directory `C:/Qt/4.7.2/src/plugins/sqldrivers/mysql' 
mingw32-make: *** [debug-all] Error 2 
12

明らかにこの回答が遅れているが、これは今日私を襲った...私は後世のためにそれに答えています。

フランク・オスターフェルド氏はほぼ確実にそうだった。どのようにmakefileを生成したか分かりませんが、おそらくnmakeのmakefileであり、mingwのmakefileではありません。 Makefile.Debugの一番上を見ると分かります。 "CXX = cl"が表示され、 "CXX = g ++"ではなく、それが問題です。

私の場合、Qt SDK自体をコンパイルしようとするとこのエラーが発生します。長い話ですが、私はconfigure-command-line( "win32-msvc"にデフォルト設定)で "-platform win32-g ++"を指定する必要がありました。

+0

"-platform "を指定する必要があります。は、 "win32-g ++"を含む文字列です。つまり、 "win64-g ++"は動作しませんが、 "win32-g ++ - 4.6"は動作します。 \ Qt \ 4.8.5 \ tools \ configure \ configureapp.cppの1380行を参照してください。 – JPaget

+2

私は 'set QMAKESPEC = C:\ Qt \ 4.8.5 \ mkspecs \ win32-g ++'で解決しました。 – JuanPablo

関連する問題